#include <stdio.h>
#include <stdlib.h>
int main()
{
char *ptr = malloc(sizeof(char) * 1);
ptr = "Hello World";
puts(ptr);
getchar();
}
我不是 malloc() 专家,但由于我只分配了一个字节但为 *ptr 指针分配了一个包含 11 个字节的值,所以该代码不应该给出错误吗?
或者 H 是否存储在我分配的位置,然后字符串的其余部分只是放在它之后的位置?