C Primer Plus note5
error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token|
遇到这种情况,不要看这里显示了三个错误,就很着急。静下心来,我们一条一条的找错误。
首先,第5行有错,错误是在‘{’左大括号前少了一个标点符号,这个标点符号具体是什么不知道。
好,现在要说明的是,编译器在遇到代码中少了一个标点符号的情况下,编译器会在缺少标点符号
的那一行代码之下的行号报错。因为编译器刚开始也不知道代码中缺少了一个标点符号,但是当编译器
编译到下面代码的时候,发现原本缺少标点符号的那一行代码的末尾应该是‘;’分号,结果编译器编译的
是一个‘{’右大括号,所以编译器会在 正在编译的这行报错,并提醒你可能在‘{’符号前少了一个标点符号。
那么根据这个原理,我们可以查找第5行之上的代码中,是否有缺少标点符号。
很不幸,又是因为手快,在第二行代码的末尾函数声明处,少了一个‘;’分号。
我们改正一下:
现在,不要去看编译器在24和32行报的错误了,我们先让编译器在编译一下:
在这里,要告诉大家:遇到很多错误不要慌张,不可能发生的事情现在很可能发生了,人总有失误的时候要静下心来,一条一条解决。
很可能是一处失误导致了很多错误,慢慢找出来。