我有一个日期类型定义为 typedef char* 日期时间; 格式为“dd/mm/yyyy-hh:mm”,例如“08/08/2012-12:00”
我想分配 n 个“日期”字符串。 以下内容有什么问题?
DateTime* dates = (DateTime* ) malloc(sizeof(char*) * n);
for (int i = 0; i <= n; i++) {
dates[i] = malloc(sizeof(char)*16);
if (dates[i] == NULL) {
free(dates);
return NULL;
}
}
最佳答案
for (int i = 0; i <= n; i++) {
^
在 C 中,数组从 0
开始,因此无法访问 dates[n]
。删除 =
。
关于c - C中char**的动态分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11884008/