C语言重新学习笔记一

       转载请注明出处:http://blog.csdn.net/east5683/article/details/22228557

     本学习笔记来自于阅读陈正冲老师编著的《C语言深度剖析》。

 

     1,sizeof是C语言中的关键字,我们经常使用其计算变量或类型所占空间大小,在计算变量或常量所占空间大小时,括号可以省略(eg:int i=0;sizeof(i)sizeof i都是可行的),而计算数据类型大小时不能省略(sizeof(int)不能写为sizeof int)

  
   2,下面的for循环是个死循环,因为unsigned int范围是0~2^32-1,当i==0后i--得到的并不是预期的-1而是
     2^32-1。

    unsigned int i;

    for(i=9;i>=0;i--)

       {

            printf("%u,",i);

       }

    
     3,C语言中的注释会被空格替换掉,eg int/*…*/i;等同于int i;是合法的,in/*…*/t i;则等同于in t i;是非法的。

       反斜杠”\”不仅可用作转义符而且还可用作续行符,用作续行符时在本行其后面不能再有任何字符(包括空格)

       左移和右移的位数不能大于数据的长度,也不能小于0

 

     4,printf函数有返回值,返回输出字符的个数。逗号运算符运算级别是最低的,逗号表达式的值是从左向右依此
      计算每个表达式的值,最右边的表达式的值就是整个逗号表达式的值。下面的for循环是死循环:

      for(i=0,printf(“first=%d”,i);i<10,printf(“second=%d”,i);i++,printf(“third=%d”,i))

     {

        printf(“fourth=%d”,i);

      }

  
     5,结构体默认的内存对齐方式是它的所有成员使用的对齐参数中最大的一个,结构体成员按其类型的对齐参数(

     常是这个类型的大小
)和指定对齐参数(#pragma pack(n)中的n)
中较小的一个对齐,并且结构体的长度必须为所用
     过的所有对齐参数的整数倍,不够就补空字节。

  
     6,#define SQR(x) printf("The square of "#x" is %d.\n",((x)*(x)));效果和

          #define SQR(x) printf("The square of %d is%d.\n",(x), ((x)*(x)));相同,记住#x需要放入双引号""里面。

  
     7, ##预算符把两个语言符号组合成单个语言符号,如#define XNAME(n) x##nXNAME(8)则会被展开为x8
,也就是
     说##
就是个粘合剂,将前后两部分粘合起来。若##
前后有空格则空格将会被省略掉。(此用法在android和
     chrome系统源码中很常见)。

  
     8,简单的可以理解内存分为三个部分:静态区、栈(也称堆栈)、堆。

      静态区:保存自动全局变量和static变量(包括static全局和局部变量),静态区的内容在总个程序的生命周期内都存
           在,由编译器在编译的时候分配。

      栈:保存局部变量,栈上的内容只在函数的范围内存在,当函数运行结束,这些内容也会自动被销毁,特点是
          效率高,但空间大小有限。

      堆:由malloc系列函数或new操作符分配的内存,其生命周期由freedelete决定,在没有释放之前一直存在,
          直到程序结束,特点是使用灵活,空间比较大,但容易出错。

 

  

 

 

 

 

 

 

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 、 1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READmE.文件(md如有),本项目仅用作交流学习参考,请切勿用于商业用途。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通;、本 3项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看ReadmE.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 、资 1源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READMe.m文件(如d有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值