結構變量的名字是什麼意思?結構變量的名稱是什麼意思?
換句話說,當我試圖代碼:
typedef struct enr
{
int a ;
char b ;
}enr ;
int main()
{
enr x ;
printf(" x = %d\n",x) ;
printf(" x.a = %d\n",x.a);
return 0 ;
}
我得到:爲X和a.x兩個!所以我得到結構的第一個字段作爲x的內容。
任何人都可以告訴我在一般情況下會發生什麼(當第一個變量是數組,字符或其他東西時)?
沒有C/C++這樣的東西,請選擇你需要哪種語言的答案。 – Slava
沒有'a.x',你的意思是'x.a'?請提供一個_working example_而不是一些不會重現該問題的僞代碼。 – tkausl
您調用*未定義的行爲*將具有錯誤類型的數據傳遞給'printf()'。另一個*未定義的行爲*將被調用以使用具有自動存儲持續時間的未初始化變量的值,這是不確定的,如果您正在使用C. – MikeCAT