• 《The C Programming Language》学习笔记


    第五章:指针和数组

    1. 单目运算符的优先级均为2,且结合方向为自右向左。
    *ip++;  // 将指针ip的值加1,然后获取指针ip所指向的数据的值
    (*ip)++;  // 将指针ip所指向的数据的值加1
    
    1. 当计算a[i]时,C编译器会立即将其转换为*(a+i)。也就是说,C语言中数组下标表达式和指针加偏移是等价的。

    2. 数组名和指针的一个区别:指针是变量,可以进行赋值和加减运算;数组名不是变量,不能进行赋值和加减运算。

    3. p[-1], p[-2]在语法上是合法的,只要保证元素存在,后向索引数组也是可以的。

    4. 指向同一个数组(包括数组最后一个元素的下一个元素)的两个指针可以进行大小比较,而对没有指向同一个数组的两个指针进行大小比较的行为是undefined的。

    5. 指针的合法操作:同类指针赋值、指针加减某个整数、指向同一数组的两个指针相减或比较大小、将指针赋值为0或与0比较;指针的非法操作:两个指针相加、相乘、相除,以及指针与浮点数相加减等。

    6. char *pmsg = "now is the time";是将一个指向字符数组的指针赋值给pmsg,而不是字符串拷贝。C语言不提供任何对整个字符串作为一个单元进行处理的操作符。

    7. 注意通过字符串指针修改字符串内容的行为是undefined的:

    char amsg[] = "now is the time";  // an array
    char *pmsg = "now is the time";   // a pointer
    
  • 相关阅读:
    unity 用LineRender画四边形并测面积
    unity读取Texture文件并转为Sprit
    unity shader入门(四):高光
    unity shader入门(三)逐像素光照,Blinn-Phong模型
    unity shader入门(二)语义,结构体,逐顶点光照
    unity shader入门(一):基本结构话痨版
    好多坑,好多好多坑(1)
    点击按钮收缩功能
    unity 实现技能释放
    ugui用户定义操作按键
  • 原文地址:https://www.cnblogs.com/wuhualong/p/read_the_c_programming_language.html
Copyright © 2020-2023  润新知