【发布时间】:2013-08-15 22:25:12
【问题描述】:
我不明白 C 中动态分配的字符串是如何工作的。下面,我有一个例子,我认为我已经创建了一个指向字符串的指针并为其分配了 0 内存,但我仍然可以给它字符。我显然做错了什么,但是什么?
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
char *str = malloc(0);
int i;
str[i++] = 'a';
str[i++] = 'b';
str[i++] = '\0';
printf("%s\n", str);
return 0;
}
【问题讨论】:
标签: c string dynamic-allocation