1. 程式人生 > >error: initializer element is not constant錯誤的原因

error: initializer element is not constant錯誤的原因

#include<stdio.h>

int a=1 ,b=3;
int c=a+b;
int main(void)
{
    printf("a=%d\n",a);
    printf("b=%d\n",b);
    printf("c=%d\n",c);
    return 0;
}

編譯結果:

原因是:全域性變數通過其他變數或者別的函式返回值賦值時,不能單獨在函式外進行,要在函式內進行。這裡改為即可:

#include<stdio.h>

int a=1 ,b=3;
//int c=a+b;
int main(void)
{
	int c=a+b;
	printf("a=%d\n",a);
	printf("b=%d\n",b);
	printf("c=%d\n",c);
	return 0;
}

執行結果: