二级一道题!关于指针、函数、数组
- C/C++ code
#include <stdio.h>#include <string.h>void point(char *p){ p++;}main(){ char *p; char b[4]={'a','b','c','d'}; p=b; point(p); printf("%c\n",*p);}结果是a,不是p++了吗,那不是b吗 为什么会是a?
[解决办法]
- C/C++ code
//================================================================= #include <windows.h> #include <iostream.h> #include <stdio.h>#include <string.h>void point(char **p){ (*p)++;}main(){ char *p; char b[4]={'a','b','c','d'}; p=b; point(&p); printf("%c\n",*p);}
[解决办法]
[解决办法]
- C/C++ code
#include <stdio.h>#include <string.h>void point(char *p){ p++;}void point_p(char* p){ (*p)++;}void main(){ char *p; char b[4]={'a','b','c','d'}; p=b; //p++; printf("%c\n",*p); //point(p); point_p(p); printf("%c\n",*p);}
[解决办法]