[英]How do I define a C struct containing a char that has a set size (for dynamic arrays)?
如何定義包含具有設定大小的 char 的結構(對於動態數組)?
在 C 中,如果您不制作可變長度 arrays (聲明的數組長度不是const int
也不是 litteral),則所有內容都應該具有固定大小。
因此,假設問題“如何定義具有設定大小並包含 char 數組的結構”,以下答案將起作用:
struct mystruct {
char c[256];
};
/* sizeof(struct mystruct) == 256 */
在其他地方分配字符串:
struct mystruct {
char *c;
};
/* sizeof(struct mystruct) == 8 */
請注意,第一個答案對字符串的最大長度以及分配的 memory 的最小數量有限制。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.