摘要: 这是一个关于C++指针的问题,思考了一下void GetMemory(char *p, int num){ p = (char*) malloc (sizeof(char) * num);}void Test(void) { char *str = NULL; GetMemory(str,100);//str 仍为NULL strcpy(str, "hello"); //运行错误}这个p等同于指针值传递,只是将p的值传递进去,然后申请内存编译器会为函数每个参数制作临时副本,p的副本_p = p;如果函数体修改了_p的内容,就导致p的内容也相应修改。如果不修改_p,p也不变。 阅读全文
posted @ 2014-03-28 00:00 george_cw 阅读(575) 评论(0) 推荐(0) 编辑