# gcc tcpclient.c -o tcpclient -std=c99 然后就编译通过了,然后继续尝试了-std=gun99的参数,也编译通过了。 后来了解到,gcc 默认使用的是 C89 的标准,而 C89 的标准不支持在for中定义循环变量,而在for循环中需要定义循环变量的话,需要在 C99 标准中才支持,因此需要增加-std=c99或-std=gun99参数才能编译...
GCC编译器的-std选项 GCC支持在编译的时候使用-std选项来选择编译语言的标准。程序本身也是在发展的,不断变化的。以 C 语言为例,发展至今该编程语言已经迭代了诸多个版本,例如 C89(偶尔又称为 C90)、C94(C89 的修订版)、C99、C11。同样,C++语言也经历了很多的标准变化,例如C++11,C++14,以及现在最新的C++20。