雄关漫道真如铁,而今迈步从头越(嗨翻C语言)8.6

1.为什么数组要从0开始编号?

  数组的索引值是一个偏移量:它表示当前要引用的这个字符到数组中第一个字符之间有多少个字符。

2.为什么要这样做

  计算机再存储器中以连续的字节进行存储,并用索引计算出字符在存储器的位置。要确定某个字符所在位置,只需要在首地址加上偏移量即可。

3.字符串字面值和字符数组的区别

  字符串字面值是一个常量,一旦创建完毕就不能再修改它们。如果强行修改,gcc会显示总线错误。(个人理解,当字符串创建完毕后,该段地址空间被修改为只读,当进行修改时,打开总线进行写操作时被禁止,因此会显示总线错误。)

4.GCC编译器的工作原理

  前端:将语言转化成一种中间语言,前端能够吧所有的语言生成同一种代码。
  后端:将中间语言转化为多种平台的机器代码。根据操作系统的不同生成特定的可执行文件。
  所以可以跨平台。
  (意外发现:GCC编译器可以将 如果再循环外执行也正确的代码 编译器会把其编译的时候移到循环外边。)

5.&&和||  &和|

  &&和||具有熔断机制,条件满足的时候可以跳过第二个条件,而&和|则总是执行两个条件。
  &和|真正的用武之地在于对数值的位运算  (二进制的每一位的与或)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值