我下面這個example,我的計劃是這樣的:如何在c中聲明結構?
example_1.c:13:1: error: unknown type name 'f'
f.x = 54;
^
example_1.c:13:2: error: expected identifier or '('
f.x = 54;
^
example_1.c:14:1: error: unknown type name 'f'
f.array[3]=9;
^
example_1.c:14:2: error: expected identifier or '('
f.array[3]=9;
^
4 errors generated.
make: *** [example_1] Error 1
這有什麼聲明結構的問題:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
struct Foo
{
int x;
int array[100];
};
struct Foo f;
f.x = 54;
f.array[3]=9;
void print(void){
printf("%u", f.x);
}
int main(){
print();
}
不過,我使用make example_1
編譯時收到錯誤?
您無法在函數之外編寫可執行代碼。把3行'struct Foo f; ...在main()裏面的f.array [3] = 9'。 – clcto 2014-09-12 13:57:32