深入理解C语言
2016-02-23 09:40
323 查看
由一些基本原理和基本规定出发,经过简单的几步推导,我们往往可得出许多丰富的推论。
EOF:End Of File,文件结束标志
C语言允许嵌套调用
故而,一定有一个函数作为程序的起点,这个函数正是
C语言规定一个 char 类型变量,占一个字节(1 byte),8个二进制位(8 bits)。
8 个二进制位表示的是它能代表 255 种状态,而非具体的数值;
声明是给编译器看的,告诉编译器根据参数及返回值类型建栈;
并未如预料的那样,输出为4, 3,真正的输出为4,1,也就是未对
arr[1] ⇒ ?
数组(包括 vector、list)的本质是位置(索引、下标)与位置(索引、下标)上的值的映射关系。
位置自然是: 0, 1, …, n-1
其上的值: a[0], a[1], …, a[n-1]
EOF:End Of File,文件结束标志
main 的本质
C语言不允许嵌套定义C语言允许嵌套调用
故而,一定有一个函数作为程序的起点,这个函数正是
main(),程序的入口和起点。
char 类型变量的本质含义
一个二进制位,能表示两种状态;C语言规定一个 char 类型变量,占一个字节(1 byte),8个二进制位(8 bits)。
8 个二进制位表示的是它能代表 255 种状态,而非具体的数值;
声明与定义
void swap(int&, int&);
声明是给编译器看的,告诉编译器根据参数及返回值类型建栈;
从 sizeof 关键字到宏
宏效率的来源,编译器确定其值;int a = 1; std::cout << sizeof(a = 3) << std::endl; std::cout << a << std::endl;
并未如预料的那样,输出为4, 3,真正的输出为4,1,也就是未对
a的值做修改,也即并未执行
a=3的赋值语句,仅仅是返回了
int类型(左值的类型),供
sizeof使用,更多关于
sizeof的讨论请见C/C++基础::sizeof() 与 sizeof(string) 。
数组的本质
arr[0] ⇒ ?arr[1] ⇒ ?
数组(包括 vector、list)的本质是位置(索引、下标)与位置(索引、下标)上的值的映射关系。
位置自然是: 0, 1, …, n-1
其上的值: a[0], a[1], …, a[n-1]
相关文章推荐
- C++中define与const的区别
- C语言中 time函数和difftime函数
- C/C++基础——inline 与 宏
- c语言基础学习
- C/C++关键字 typedef 的使用说明
- C++静态库与动态库
- C++语言-01-简介
- iOS开发-OC、C、C++ 混编
- C语言 getopt()函数的使用
- C++11中新特性之:unordered_map
- C++ Template Class List
- C++学习笔记3
- UVALive 5873 - Tree Inspections 【模拟】
- UVALive 5878 - Shortest Leash 【计算几何】
- C语言知识点汇总(未完成)
- UVALive 5876 - Writings on the Wall 【KMP】
- VC++的一个奇怪的C2732错误
- UVALive 5870 - Smooth Visualization
- 2016年2月23号工作日记
- 查找单链表倒数第k个元素