【发布时间】:2013-10-04 19:21:27
【问题描述】:
我正在尝试编写一个程序,它从文本文件中读取一系列字符串并将这些字符串存储在字符串数组中,为每个元素动态分配内存。我的计划是使用指针将每个字符串存储在一个数组中,然后随着读取的更多内容增加数组大小。我无法理解为什么下面的测试代码不起作用。这是一个可行的想法吗?
char *aPtr;
aPtr =(char*)malloc(sizeof(char));
aPtr[0]="This is a test";
printf("%s",aPtr[0]);
【问题讨论】:
-
这不起作用,因为您
malloc为单个字符留出空格,然后您尝试将整个字符串分配给char类型的左值。
标签: c arrays dynamic-memory-allocation pointer-to-pointer