首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

这样为什么也能过?该怎么处理

2012-04-16 
这样为什么也能过?C/C++ code#include stdio.hint main(void){char * pp abcdefgprintf(%s, p)

这样为什么也能过?

C/C++ code
#include <stdio.h>int main(void){     char * p;     p = "abcdefg";          printf("%s", p);     return 0;}


为什么这样编译也能通过?不解?明明没有分配内存?真的不解!还是字体串处理不同?还是我对指针没有理解透?我用的是vc++6.0.

[解决办法]
到底是什么书说指针要分配内存才能用的???

指针只要合理的初始化或赋值,指向一个有效的对象就可以使用!、
p = "abcdefg";

"abcdefg"是一个匿名字符数组,数组名可以隐式转换成首元素的指针,于是p就被赋值为这个匿名数组的收元素指针。

热点排行