《C Prime Plus》知识点记录 P3

Page 3

前言

最近看了《C Prime Plus》第六版。感觉这本是写真的不错,说起来我一个计算机的学生现在才开始这本书实在是有点慢了,虽然学校在大一上的时候教过这门课,但是和这本书的内容相比简直就是弱爆了。在看这本书的时候,我会把一些比较容易忘记的知识点记下来,但是想想可能也有很多的小白和我有一样的问题,所以干脆就写这一系列的博客,一方面方便我回顾,另一方面可以帮助有同样问题的小白。
我把书中的代码和课后习题放在了自己的github里面了,地址是
https://github.com/alon-han/CPrimePlus-code
欢迎大家点个star给我


提示:知识点的形式比较零散,如果想看比较连贯的知识点还是需要去书的。

内容

1、使用字符串初始化数组和指针

  • 初始化数组:把静态存储区的字符串拷贝到数组中
  • 初始化指针:只把字符串地址拷贝给指针

2、字符串、字符数组、字符串数组

  • 字符串:使用双引号括起来的一个值
  • 字符数组: char类型的数组
  • 字符串数组:存在两种实现方式
    • 指向字符串的指针数组
    • char类型二维数组
      2中方式各有优缺点,取舍使用

3、fgets/fputs && gets/puts

gets()丢弃输入中的换行符 puts()在输出中添加换行符
fgets() 保留输入中的换行符fputs()不在输出中添加换行符

4、NULL 和 ‘\0’

相同之处:都可以别结束为数值0
不同之处:’\0’是字符串结束字符;NULL是一个指向无效地址的指针

5、翻译单元

C预处理器实际上使用.h文件内容替换include的位置,编译器把这个.c文件和其include的.h文件一起看做一个文件,成为翻译单元。一个文件作用域变量的实际作用范围是一个翻译单元。

6、三种连接形式和文件作用域

  • 外部链接:在任何函数外部直接声明
  • 内部链接:加上static关键字在任何函数外部声明
  • 无连接:在函数内部声明static变量(在该翻译单元中,只有该函数看得见这个变量)

外部链接的文件作用域:所有翻译单元都可以使用
内部链接的文件作用域:一个翻译单元私有

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值