编程基础
Norton-JAVA工程师
android+java后端架构
展开
-
c 中typedef函数的用法
#include //本文转自http://blog.sina.com.cn/s/blog_6d5fee120100ymu2.htmltypedef int(*FP_CALC)(int,int); //注意这里不是函数声明而是函数定义,它是一个地址,你可以直接输出add看看 intadd(inta,intb) { returna + b; } in转载 2014-04-01 10:08:47 · 552 阅读 · 0 评论 -
do{...}while(0)的意义和用法
http://www.spongeliu.com/415.htmllinux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资转载 2014-08-13 12:25:12 · 563 阅读 · 0 评论 -
printf二进制数据
今天#include #include "string.h"void decToBin(int num,char *buffer);void supplement_zero(char *buffer);void reOrder(char *buffer);void printf_binary_byte(int num);int main(){ int decim原创 2014-06-09 11:09:26 · 11161 阅读 · 0 评论 -
printf打印二进制数据
#include void decToBin(int num,int base);int main(){ int decimalNum; int base=2; printf("Enter number in decimal:"); scanf("%d",&decimalNum);printf("\n"); printf("Decimal%d:",decimalNum);原创 2014-06-06 15:48:16 · 13627 阅读 · 1 评论 -
warning: the `gets' function is dangerous and should not be used.
今天在LINUX下编译C程序时,出现了:warning: the `gets' function is dangerous and should not be used.这个warning。百度之后,得知问题出在程序中使用了 gets ,Linux 下gcc编译器不支持这个函数,解决办法是使用 fgets[cpp] view plaincopy转载 2014-04-10 12:09:28 · 1117 阅读 · 0 评论 -
指针数组的malloc分配内存例子
今天,调试时候发生这个错误,算法逻辑都检查了,没有问题,看来是原创 2014-04-24 12:29:49 · 3251 阅读 · 0 评论 -
C语言实现邻接矩阵
运行结果norton@norton-laptop:~/learning/sample code/algrithm/map/adjacency_list$ ./adjacency.oPlease input num of vertex and edge4 8Please input edge info:i j dist1 2 101 3 151 4 72 1 8原创 2014-04-24 12:23:58 · 963 阅读 · 0 评论 -
C语言打印二叉树
基于上一篇,加入了树枝,看起来更直观,不过加这个树枝,算那个横线和空格花了我不少时间,不过最后能写出来,挺爽。上一篇http://blog.csdn.net/xzongyuan/article/details/21945749 C语言打印二叉树在广度遍历的时候,有非常繁杂的计算符号的方法,要看懂可能得花时间。(1)整个设计的难点在sprintf函数运用。sprint原创 2014-03-25 16:42:51 · 8009 阅读 · 3 评论 -
构建二叉树实例
注意结构体中的_tree_node成员,如果写成tree_node会报错:binary_tree.c: In function ‘construct’:binary_tree.c:39: warning: passing argument 1 of ‘tree_init’ from incompatible pointer typebinary_tree.c:13: note: expec原创 2014-03-17 15:12:18 · 2095 阅读 · 0 评论 -
struct 结构体定义方式汇总
结构体变量定义方法多样,统计一下直接定义"结构体变量"——如果结构体只在局部使用(函数或.c文件),则可直接定义变量struct person{char name[8];int age;} p1;先定义"结构体类型",再利用"结构体类型"名定义"变量"——主要是为了重用该数据类型,有时候还用typedef重命名一个结构体。目的:如果某个结构体变量很常用,多个文件共用,就该先定义原创 2014-03-14 11:43:02 · 1712 阅读 · 0 评论 -
c语言队列基本操作代码
为了打印binary tree,要使用队列,所以先写个程序测试下#include#includetypedef struct _node{ int value; struct _node *next;}Node;typedef struct _Queue{ Node *head; Node *tail;}Queue;Queue* init_qu原创 2014-03-22 22:15:26 · 7118 阅读 · 0 评论 -
C语言中什么是形参,什么是实参?
转自百度http://zhidao.baidu.com/question/62266451.html?qbl=relate_question_0&word=c%D3%EF%D1%D4%D0%CE%B2%CE例如:你自己定义一个函数 int max(int a,int b){... } 在这里a,b就是形参,接下来你会调用max函数,如: void main() { int c,int转载 2014-04-01 17:03:37 · 9095 阅读 · 1 评论 -
C语言打印字符串实例
#include#includevoid main(){ char a[5]="____\0"; printf("%s %s\n",a,a); printf(" \n"); printf(" %s\n",a);}注意加了结束符\0,如果不加这个会乱码,还要注意字符是5,包括结束符。原创 2014-03-20 12:15:17 · 1526 阅读 · 0 评论 -
sprintf用法——把结果打印到打印字符串而不是终端
sprintf用法简介选自《CSDN 社区电子杂志——C/C++杂志》在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。sprintf 是个变参函数,定义如下:转载 2014-03-21 15:59:47 · 3988 阅读 · 1 评论 -
C语言堆栈入门——堆和栈的区别
转自http://www.cnblogs.com/TonyEwsn/archive/2010/01/29/1659496.html原文:http://student.csdn.net/link.php?url=http://www.top-e.org%2Fjiaoshi%2Fhtml%2F427.html格式和部分内容稍作修改。在计算机领域,堆栈是一个不容忽视的概念,我转载 2014-03-21 15:39:05 · 627 阅读 · 0 评论 -
c语言自定义堆栈
c语言没有堆栈,要自定义。转百度知道的,稍后要研究struct Stack{ int mData[100]; int mLen;};//初始化栈void InitStack(Stack &S){ S.mLen = 0;}//元素进栈void Push(Stack &S,int item){ S.mData[S.mLen++] = item;}//删除栈顶元素int转载 2014-03-21 15:08:28 · 1303 阅读 · 0 评论 -
运行时输入的char转int
写了一个.o程序,想运行时输入一个数字,表示数量大小,但是输入的是char串的指针,要转化为int。方法是使用atoi函数,main获取到的就是输入参数是char字符串指针。所以所以直接把argv的数组元素给atoi就行了。不用进行类型转换。int main(int argc , char **argv){int quantity; if(argc == 1){原创 2014-03-20 17:11:45 · 712 阅读 · 0 评论 -
广度优先遍历代码
广度优先周游二叉树(层序遍历)是用队列来实现的,从二叉树的第一层(根结点)开始,自上至下逐层遍历;在同一层中,按照从左到右的顺序对结点逐一访问。按照从根结点至叶结点、从左子树至右子树的次序访问二叉树的结点。算法: 1初始化一个队列,并把根结点入列; 2根节点入队 3循环直到队列空 3.1 q=队列头元素出队 3.2 访问q的数据域转载 2014-03-21 15:41:30 · 895 阅读 · 0 评论 -
指针的大小到底是由谁决定?是多少?
小结:貌似8位单片机可以有16位寻址长度。之前看到有些8位机可以跑16位寻址,一直不解,所以找了下资料。参考了下文,如果寻址地址是16,可能编译器也是16位的,这样8位机的指针其实也可以是16位长度的。另外,据说指针长度是和计算机字长有关的。一般说8位机的字长也是8位,会不会字长也是对应着寻址长度呢?这些疑问只好以后碰到datasheet再考虑了。下文转自 http://blog.原创 2014-12-22 17:36:51 · 1533 阅读 · 0 评论