4.1我声明一个指针并为它分配空间,为什么不行
问题:我想声明一个指针并为它分配一些空间, 但却不行。这些代码有什么 问题?
char *p; *p = malloc(10);
你所声明的指针是p, 而不是*p, 当你操作指针本身时(例如当你对其赋值, 使 之指向别处时), 你只需要使用指针的名字即可:
p = malloc(10);
当你操作指针指向的内存时, 你才需要使用* 作为间接操作符: *p = ’H’; 参见问题1.7, 7.1, 7.5 和8.3。
char *p; *p = malloc(10);
你所声明的指针是p, 而不是*p, 当你操作指针本身时(例如当你对其赋值, 使 之指向别处时), 你只需要使用指针的名字即可:
p = malloc(10);
当你操作指针指向的内存时, 你才需要使用* 作为间接操作符: *p = ’H’; 参见问题1.7, 7.1, 7.5 和8.3。