返回字符串数组的方法。由于某种原因,该方法在访问专门用于最后一个NULL
值的字符串值时失败。
static char **getList() { char **list = (char *[]){"ABC", "DEF", NULL}; char **interests = malloc(sizeof(char*) * 3); int i = 0; while(*list) { interests[i] = malloc(sizeof(char) * strlen(*list)); strcpy(interests[i++], *list); list++; } return interests; }
使用中
char **interests = getList(); while(*interests) { puts(*interests); interests++; }
附带的屏幕截图。
返回字符串数组的方法。由于某种原因,该方法在访问专门用于最后一个NULL值的字符串值时失败。静态char ** getList(){char ** list =(char * []){“ ...
strlen()
,缺少用于终止空字符的空间的分配。您做了一些... weird