我有一个包含几个字符串的动态结构数组,比如char *str1
,char *str2
,char *str3
。
我必须从文件中获取字符串,并根据字符串长度给每个结构成员内存。
我该如何处理? 非常感谢。
答案 0 :(得分:1)
“动态结构阵列”是什么意思?它是一个结构数组还是一个字符串数组(= char指针数组)?
如果它只是一个指针数组,你只需为每个条目调用malloc()然后分配字符串。
char *strings[5];
void insert_string(int array_index, char *string, int length)
{
strings[array_index] = malloc(length);
strcpy(strings[array_index], string, length);
}
当然,您必须添加代码以防止阵列溢出,或自动跟踪索引......