
C语言
真相Onlyone
电子信息工程学生
展开
-
C语言指针杂记
1.指针就是地址,地址就是指针 2.指针变量:定义某个变量,这个变量中存的是地址(指针)的值 3.void类型的指针在传参过程中可以接受任何类型指针的值,也可以把自己的值传给任何类型的指针 4.int (*p)[3]:指针p指向int类型的数据,该数据有3个int类型那么大 5.int arr[2][3]列指针:int * p=&arr[0][0] 或 *(arr+0) 或 arr[0]原创 2016-05-26 15:46:26 · 247 阅读 · 0 评论 -
C语言存储空间管理和链表杂记
1.分配空间后一定要free掉,free后指向该空间的指针也应被赋NULL,养成好的编程习惯 2.在子函数中,malloc申请的空间不会随子函数的结束被释放,若忘记free,改程序会有内存泄漏,只有当该进程结束时这个空间才会被释放,应做好处理! 3.存储模型:线性,树状(有向无环图),图状 4.存储方式:顺序(空间受限,查找方便);链式(空间不受限,查找较不方便) 5.头结点:数据与无效,只原创 2016-05-26 18:39:58 · 423 阅读 · 0 评论 -
C语言数据类型杂记
1.整型数(int)以补码存储,正数的补码是其本身,负数的补码是其按位取反再加1 2.实型数(float,double)不能左右移动,即不能做位移(逻辑左右移,算术左右移) 3.有符号整型:int 4字节 short 2字节原创 2016-05-19 18:40:53 · 392 阅读 · 0 评论 -
C语言判断分支循环函数杂记
1.switch(常量){case 常量1;case 常量2;……}:小括号中一定要写整型常量,case后面接的同样是整形常量(char型当做整型处理) 2.switch语句中多个case共用彼此的语句(顺序执行),因此,若没有遇到break则继续向下执行 3.break不能够放在简单的分支和顺序结构里 4.goto的用法:计算1~100的值,goto用于无条件跳转loop:if(1<=1原创 2016-05-19 18:55:33 · 472 阅读 · 0 评论 -
C语言数组结构体共用体杂记
1.计算数组元素个数:数组内的元素个数=数组整体大小/数组类型大小,Eg. sizeof(a)/sizeof(a[0]); 2.scanf中合法分隔符:空格,回车,TAB键 3.printf打印地址:%p,Eg. printf(“%p\n”,&a[i]); 4.“*”取值,“&”取地址一维数组:*(a+i)=a[ i ];二维数组:* ((a+i)+j)=a[ i ][ j ];(行地原创 2016-05-22 12:12:22 · 970 阅读 · 0 评论 -
Linux下调用math.h头文件但编译显示未定义
Linux下调用math.h头文件但编译显示未定义(undefined reference to..)的解决办法: 在编译时加入-lm即可 Example:gcc calculator.c -lm -o calculator-lm含义:-l是指定程序链接哪个静态库或者动态库,-m表示的是数学库,也就是使用math.h头文件,就得链接数学库进行编译,-lm的意思就是告诉程序链接数学库原创 2016-07-24 09:15:56 · 4794 阅读 · 1 评论 -
VS2013(Ctrl+F5)运行程序后闪退问题
在return语句前加:system(”pause”);注意:c中用system(“pause”)的时候得引用头文件stdlib.h(如果有更好的解决方法的朋友,欢迎在评论中指出)原创 2016-07-24 09:50:29 · 2886 阅读 · 1 评论