[問題] 宣告 struct 變數後給初始值

作者: linshihhua (linshihhua)   2017-09-11 20:16:41
譬如定義結構
struct data{
char name[10];
int age;
};
想請問分段先宣告再給值
struct data A;
A = {"a", 10};
為何不行?
而宣告值接給值卻可以
struct data A = {"a", 10};
作者: jerryh001   2017-09-11 20:19:00
就…跟陣列的規則一樣 詳細請樓下解釋
作者: stucode   2017-09-11 20:32:00
因為沒有這樣的語法 但C99以後可以用compound literals做類似的事情 A = (struct data){"a", 10};
作者: PkmX (阿貓)   2017-09-11 21:32:00
C++11之後是可以的 叫做copy-list-initialization
作者: lostonce   2017-09-12 13:06:00
assignment 和 initialization 不一樣

Links booklink

Contact Us: admin [ a t ] ucptt.com