Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / C语言知识总结

C语言知识总结(近期笔试遇到的,锐捷,多米)1. argv 最后一个元素是空指针! 比如ls -l remind 分别是argv[0] argv[1] argv[2]  argv[3]为空指针2. strcpy(char *s1,const char *s2)将s2中的字符复制到s1中直到s2遇到第一个空字符为止,并且s2的结束字符也复制进去了!!!3. char 分为unsigned 无符号与有符号,int 4 float 4 double 8 short 24. struct {
  int i;
  char c;
  enum suit{one,two,three,five,aaa};//这里定义了变量‘;’前面加上a
  char cc;
 }node;其中枚举是不占空间的,这里有没有枚举sizeof(node)结果都是8,但是如果enum定义了变量a,那么将增加8字节但是单独sizeof(suit)的结果是4;如果是联合union,那么要算联合里面单个最大字节的那个;如果第一次给它赋值后再给它赋值,那么先前的值就不存在了!比如union里面有int,float,double,给double,然后给int,那么double就不存在了,输出不确定的值。5.以防包含重复的头文件,还可以用#pragma + 命令 表示只执行一次#ifndef _MAIN_
#define _MAIN_#endif 6.函数指针int (*funArr[10])(float, char, char)
int result2 =(*funArr[0]) (12, "a", "b")这是定义一个数组10个成员,每个成员是一个函数指针,参数为float,char,char,返回为int7.对于整数数组可以通过sizeof(arr)/sizeof(int)来计算个数,字符串直接判断结尾字符即可8.0的ASCII对应的是48,A对应的是65,a对应的是97,这个要牢记9.局部变量与全局变量,局部变量所在的范围内会覆盖全局变量10.cin使用空白来定字符串的界(空格,制表符,换行符),也就是只会读取第一个单词,遇到空白就结束。所以需要使用面向行的类成员函数,getline(),里面参数是数组名,数组长度。通过回车符判断输入结束。11.结构中的位字段struct {
 unsigned int age:4;  //低4位
 unsigned int in:4;  //接着4位
 bool ismax:1;
};这样可以节约空间。12.指针一定要在解引用之前给一个确定的地址。13.引用本身不占空间C++ Primer Plus 第6版 中文版 清晰有书签PDF+源代码 http://www.linuxidc.com/Linux/2014-05/101227.htm读C++ Primer 之构造函数陷阱 http://www.linuxidc.com/Linux/2011-08/40176.htm读C++ Primer 之智能指针 http://www.linuxidc.com/Linux/2011-08/40177.htm读C++ Primer 之句柄类 http://www.linuxidc.com/Linux/2011-08/40175.htm将C语言梳理一下,分布在以下10个章节中:
  1. Linux-C成长之路(一):Linux下C编程概要 http://www.linuxidc.com/Linux/2014-05/101242.htm
  2. Linux-C成长之路(二):基本数据类型 http://www.linuxidc.com/Linux/2014-05/101242p2.htm
  3. Linux-C成长之路(三):基本IO函数操作 http://www.linuxidc.com/Linux/2014-05/101242p3.htm
  4. Linux-C成长之路(四):运算符 http://www.linuxidc.com/Linux/2014-05/101242p4.htm
  5. Linux-C成长之路(五):控制流 http://www.linuxidc.com/Linux/2014-05/101242p5.htm
  6. Linux-C成长之路(六):函数要义 http://www.linuxidc.com/Linux/2014-05/101242p6.htm
  7. Linux-C成长之路(七):数组与指针 http://www.linuxidc.com/Linux/2014-05/101242p7.htm
  8. Linux-C成长之路(八):存储类,动态内存 http://www.linuxidc.com/Linux/2014-05/101242p8.htm
  9. Linux-C成长之路(九):复合数据类型 http://www.linuxidc.com/Linux/2014-05/101242p9.htm
  10. Linux-C成长之路(十):其他高级议题
本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-12/111042.htm