哎,太简单了,输出:"Jello".

解决方案 »

  1.   

    结果是Jello,或者是出现非法操作。
    在主程序中指针p不确定,调用change函数时,函数中对p的变化不会改变主程序中p的变化。
      

  2.   

    输出:"Jello".,函数中对p的变化不会改变主程序中p的变化。
      

  3.   

    p  =  (char  *)malloc(  100  ); 
     char  *p  =  "Jello"; 
     中两个p的地址并不一样!!
      

  4.   

    实际就是传值还是传址的问题啊。
    你用的传值啊,当然不会改变P了。
    传址才是将MAIN里面的P的地址给CHANGE。
      

  5.   

    调用函数change(char  *p)  时,程序在内存中拷贝生成 指针p的一个临时副本,所指地址与p相同,但语句p  =  (char  *)malloc(  100  ); 改变了这个临时副本所指的地址,所以其后的操作都是在另一个地址上进行,输出结果为"Jello".