C 使用stdlib.h或stdio.h中的某些函数会导致语法错误
我正在Visual Studio 2005的Win7 Pro x64上编写一些C代码。代码是正确的;它在Eclipse下编译并在MinGW上运行。但是,在VS2005中构建代码时,使用标准C库(如stdio或stdlib)中的某些函数会导致以下几行出现语法错误。例如:C 使用stdlib.h或stdio.h中的某些函数会导致语法错误,c,syntax-error,C,Syntax Error,我正在Visual Studio 2005的Win7 Pro x64上编写一些C代码。代码是正确的;它在Eclipse下编译并在MinGW上运行。但是,在VS2005中构建代码时,使用标准C库(如stdio或stdlib)中的某些函数会导致以下几行出现语法错误。例如: #include<time.h> #include<stdlib.h> #include<stdio.h> #include"someOtherHeader.h" int main(void)
#include<time.h>
#include<stdlib.h>
#include<stdio.h>
#include"someOtherHeader.h"
int main(void){
srand((unsigned int) time(NULL));
double start;
.
.
.
#包括
#包括
#包括
#包括“someOtherHeader.h”
内部主(空){
srand((无符号整数)时间(NULL));
双启动;
.
.
.
下面的代码无关紧要。VS2005说在“type”之前缺少“;”。注释掉srand()可以解决问题。奇怪的是,当以后调用rand()时,没有问题。我还注意到exit()和fprint()的行为。但malloc()没有。想法?在Visual Studio中使用C会使编译器变得严格(老派C)模式。您的所有声明必须在区块的开头:
#include<time.h>
#include<stdlib.h>
#include<stdio.h>
#include"someOtherHeader.h"
int main(void){
double start;
srand((unsigned int) time(NULL));
.
.
}
#包括
#包括
#包括
#包括“someOtherHeader.h”
内部主(空){
双启动;
srand((无符号整数)时间(NULL));
.
.
}
Visual Studio不支持C99(只支持一点点)