C语言笔记——一些小细节

来源:互联网 发布:matlab求解非线性优化 编辑:程序博客网 时间:2024/06/06 03:39

1. 定义一个二维数组,行数可以省略,列数不可以。

2. char ex[5][4]; scanf("%s", ex); 无需取地址符&,因为字符数组本身是指针。

3. %-12s中“-”表示向左对齐(默认向右对),“12”表示占12个字节。

4. 定义一个数组,比如char ex[N]; N应为恒量,如 # define N 5;或const int N = 5;

5. 不支持字符数组的直接赋值,需要使用strcpy函数实现数组的赋值。如strcpy(ex[i], ex[i + 1]);

如果直接数组名赋值,就是复制数组名指向的地址,但是数组名指向的地址一旦给定就不能变。

6. sizeof(++i); 不执行 ++i 。

7. 数组作为函数实参时,只传递数组的地址(首地址指针),并不传递整个数组的空间。