Hu Zhenyu's Blog


访客计数:
net traffic statistics

about

数组初始化的一个问题

21 int speed_arr[] = { B38400, B19200, B9600, B4800, B2400, B1200, B300,

22  B38400, B19200, B9600, B4800, B2400, B1200, B300, };

23 int name_arr[] = {38400,  19200,  9600,  4800,  2400,  1200,  300, 38400,

24  19200,  9600, 4800, 2400, 1200,  300, };

今天碰到一个人问 上述数组初始化时 ,末尾多余的逗号没错吗?

答案如下:

c的程序是自顶而下,当那个程序读到最后的元素的时候,继续向后读,读到“,”的时候,认为后面还有数据,但是读到“}”时候,这个数组算是读完了,所以可以认为没有错误,但是如果再在“,”后面再加上一个逗号,那就是肯定有问题了,因为此时,这一行的程序没有读完,但是有没有值去赋给它,所以发生错误!

上一篇: GNU編碼標準中關於使用內存分配例程的論述
下一篇: Qt 入门系列 (一) - Qt...


知识共享许可协议

本站采用 知识共享署名-非商业性使用-相同方式共享3.0 中国大陆许可协议 进行许可,转载请注明出处。

推荐使用 chrome 浏览器浏览本站。