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

有关使用指针做交换函数的有关问题

2012-03-26 
有关使用指针做交换函数的问题我写了一个函数用来交换x,y的值,传入的是指针如下voidswap(char*x,char*y){c

有关使用指针做交换函数的问题
我写了一个函数用来交换x,   y的值,传入的是指针
如下
void   swap   (char   *x,   char   *y)   {

char   *temp   =   NULL;
*temp   =   *x;
*y   =   *x;
*x   =   *temp;

}

运行就出错

但是改为
void   swap   (char   *x,   char   *y)   {

char   *temp   =   x;
*y   =   *x;
*x   =   *temp;

}
就可以正常运行了,结果也对

不知道是为什么,是不是指针在编译时这两种写法会造成不同的结果呢?

PS:VC6.0环境

[解决办法]
你让temp指向空,*temp就没有意义了!
看来楼主对指针的理解还需要加强啊

热点排行