标题:【老司机进】关于函数参数的使用的问题
只看楼主
Alien_Lee
Rank: 8Rank: 8
来 自:Linux帝国
等 级:蝙蝠侠
威 望:7
帖 子:149
专家分:739
注 册:2016-7-19
结帖率:83.33%
已结贴  问题点数:10 回复次数:2 
【老司机进】关于函数参数的使用的问题
既然C语言中规定函数本身并不会改变其参数的值,那为何在很多函数的实现中都要对参数进行一些保护操作。
比如有函数
int fun(int c)
{
  int ch=c;//就是类似这样的。就算程序中更改了c,也只是他的副本而已,为何还要这样的操作。
  /*...other code..*/
}
还有
char *func(char *s1)
{
  char *s2=s1;//其实我们知道,这句并不能保护s1的内容。
}

搜索更多相关主题的帖子: 函数 参数 保护 int char 
2017-07-24 10:02
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:10 
没有必须  只能说是程序需要而已

有很多指针是为了保存初始位置

DO IT YOURSELF !
2017-07-24 10:10
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
临时储存变量~经常啦~

int t=a;
a=b;
b=t;

这里交换数值用t作为临时变量~
在各种排序算法中这可以说是经常见到的~


[此贴子已经被作者于2017-7-24 13:58编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-07-24 13:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-479579-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.104438 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved