C语言三剑客 您所在的位置:网站首页 c语言三剑客的书籍 C语言三剑客

C语言三剑客

2024-06-29 15:04| 来源: 网络整理| 查看: 265

阅读这三本书,记录一下平时没注意的细节点,持续更新…

C和指针 数据

1.四种基本类型是 整型、浮点型、指针、聚合类型(数组和结构等) 2.整型字面值缺省情况下是能完整容纳这个值的最短类型 3.字面值后加L/l为long整型,U/u为unsigned,数值前面以0开头为8进制,0x开头为16进制 4.字符常量类型总为int,单引号包围,’M’ 5.宽字符常量:多字节字符常量前面加一个L,L’X’,需要运行环境支持才能使用 6.浮点类型存储非整数或远超过计算机整数所能表达的范围(unsigned int 型最大:4294967295 即10的10次方量级) 7.浮点类型缺省情况下都是double型,所有的浮点类型至少能容纳10-37~1037之间的任何值 8.字符串常量以NUL字节终止符结尾 “”空字符串依然有NUL 9.不允许修改字符串常量,如果需要修改字符串,请将其存储于数组中 10.程序中使用字符串常量会生成一个“指向字符串的常量指针”,使用时是指针 11.C函数库包含一组操纵字符串的函数 12.除char以外其他整型类型缺省情况下都是符号数,char因编译器而异 13.浮点类型除了long double之外,其余几个说明符(short signed unsigned)都是不可用的 14.编译器不检查数组下标是否在合法范围内,如果下标值是根据用户输入的数据产生的,那么必须进行检测 15.注意指针类型声明写法 int *a,*b,c 这条语句表达a产生的结果类型是int,*操作符执行的是间接访问操作,由此推定a是一个指向int的指针 16.函数如果不显式地声明返回值的类型,它就默认返回整型 17.作用域分为四类:文件作用域、函数作用域(只适用于语句标签,用于goto,一个函数中语句标签唯一)、代码块作用域、原型作用域(只适用于在函数原型中声明的参数名) 18.链接属性有3种:external(外部):不论声明多少次,位于几个源文件都表示同一实体、internal(内部):同一源文件内的所有声明指向同一实体,不同源文件的多个声明则分属不同的实体、none(无):该标识符多个声明都是独立不同的实体 19.关键字extern指定链接属性external(仅在第一次声明时有效),static指定链接属性internal 20.存储类型:普通内存(全局变量、静态变量,程序运行之前创建,程序执行期间始终存在)、运行时堆栈(代码内部声明的变量缺省类型是自动的automatic,执行到时创建,执行流离开该代码块时自动销毁)、硬件寄存器(关键字register用于自动变量的声明,存储于硬件寄存器,通常效率更高,实际使用情况根据编译器的寄存器优化方案决定) 21.静态变量初始化中,可以把想要的值放到程序执行时变量会用到的位置,可执行程序载入内存时,会将值赋给那个变量(即内存中位置不变) 22.Staic的理解:用于函数定义或代码块之外的变量声明时,用于修改标识符的链接属性,但标识符的存储类型和作用域不受影响(本来就是普通内存,本文件),只能在声明它们的源文件中访问;用于代码块内部的变量声明时,static关键字用于修改变量的存储类型,从自动变量修改为静态变量,但变量的链接属性和作用域不受影响(static只对external的声明才有改变链接属性的效果)。

语句

23.嵌套循环中,内层循环的break(结束)或continue(本次)只对内层循环起作用,无法影响外层 24.goto 语句标签;不建议使用,技巧:可用于立即从深层嵌套的循环中退出,但通过把深层嵌套的循环整体封装成一个函数,在深层嵌套处return效果一样

操作符和表达式

25.操作符 右移位分为逻辑移位和算数移位,无符号值都为逻辑移位,有符号数取决于编译器 26.位操作 置1:value=value|1



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有