c语言里函数问题,C语言函数问题

c语言 函数的问题

不知道你对函数这个东西有没有概念。在程序执行swap函数的时候,传进函数的两个值3,4分别赋值给了x,y,并x,y进行了值的交换。所以输出的是43。当你用printf的时候输出的是a,b的值,所以是34。可能是行得到的结果都是43,但是这个过程中要想实现输出43,必须使用指针才行。如果深入的解释一下就是从内存开始了。当你定义a,b的时候系统会给a,b分配内存,每个内存都有一个地址,数据就存放在带有地址的内存当中。那么在自定义函数里也是这样。x,y同样有自己的内存地址,并且和ab是不一样的,所以你做交换的时候交换的知识xy中的数据,并没有对ab做什么操作。所以在用printf输出数据的时候仍然是34。不知道你理解没有,还是先对内存的结构进行一下了解吧。

创新互联建站专注于定海企业网站建设,响应式网站,成都做商城网站。定海网站建设公司,为定海等地区提供建站服务。全流程按需网站制作,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

C语言中函数声明问题

第一,如果你没有看错就是你的书错了,只有int和char类型的函数不必声明

第二,C中可以不声明函数的条件是3个

1就是上面我说的

2.是被调函数定义在主调函数之前,可不必声明

3函数的外部已声明过了,个个主调函数中不必声明

对于第二点,很好解释,因为声明的目的在于告诉编译器有这么个自定义函数,返回类型是什么,如果被调函数定义在主调函数之前,那么编译器自然就知道了这个函数

你把f2和f1换下位置并去掉声明就明白了

再说一句,写函数声明是编写程序的良好习惯

请注意这是C程序,C官方声明标准编译器是Turboc 2。0

不要把C++的概念强加给C

我不是说VC++6不好,而是说既然是在学C,就要用标准的C编译器,只有标准C编译器才能正确的学习C的基础理论

C语言中函数调用的问题?

关于c语言中函数调用问题解答如下:

首先如果是编译的这个代码那这个函数肯定被调用了,让你觉得没有调用是因为while循环没有被执行。

图中红色框内代码p1和p2经过赋值p1是肯定大于p2所以不满足while.的条件直接退出了函数。

你需要看看要实现啥在改一下。

C语言里 函数问题

在C语言中,实参数组在传递到函数形参中时,会退化为指针。也就是说mid函数中的a实际上是一个指针,而不是数组。尽管形参的声明是int a[],它实际上和int *a是一样的。

在32位程序中,一个指针占4字节,而一个int型也占4字节。因此sizeof(a)/sizeof(int)=4/4=1。


本文题目:c语言里函数问题,C语言函数问题
浏览地址:http://bzwzjz.com/article/dseshsd.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 网站建设方案 成都网站建设公司 成都网站制作 成都网站建设公司 成都网站设计制作公司 手机网站设计 做网站设计 成都网站制作 重庆网站设计 网站制作 成都营销网站建设 四川成都网站建设 成都网站建设公司 重庆网站制作 营销型网站建设 成都企业网站建设公司 成都网站设计 移动手机网站制作 盐亭网站设计 网站建设 手机网站制作 网站设计