1. 程式人生 > >c99和c++11的差異之一

c99和c++11的差異之一

修改 std c++11 error bsp err 必須 pri ()

#include <stdio.h>

void main(){

  printf("hello world.\n");

}

gcc hello.c -o hello -std=c99

編譯通過。

但通過如下編譯則失敗——

g++ hello.c -o hello -std=c++11

失敗信息為:

hello.c:3:11: error: ‘::main’ must return ‘int’
void main()
^

這是因為在c+11中,main必須為int類型,但卻可以不必有返回值;修改代碼為如下即可——

#include <stdio.h>

int main(){

  printf("hello world.\n");

  /*return 0; 可以不需要這行*/

}

c99和c++11的差異之一