c语言 变量交换函数

来源:互联网 发布:java javascript 编辑:程序博客网 时间:2024/05/16 15:19
<pre name="code" class="cpp"><pre name="code" class="cpp">//用指针变量作为中间变量void swap(int *p1, int *p2){    int *t;    *t = *t1;    *t1 = *t2;    *t2 = *t;}

//用局部变量作为中间变量
void swap(int *p1, int *p2){ int t; t = *t1; *t1 = *t2; *t2 = t;}



c语言好久不看,程序不练,一到面试就犯糊涂,如上面的情况,交换两个变量的值,形参应该是 有效的 指针变量。

但在里面进行两个变量的互换时,有时一时就会写成一个int *t的中间变量,然后运行,一般情况下都是core dump;


之所以会用到上面第1种的写法,很多情况下还是对指针的不熟悉所致,写程序抱着一种想当然的心情,写起来也就不会想那么多,而平时练的比较少,一般工作中如果用纯c写程序,或许还可以多练练,加强意识。但如果是用比较高层的语言写程序,很多情况下上面的片断都不用自己写,都可以用其它函数实现。


类似的还有如下错误指针的用法:






0 0
原创粉丝点击