请大家帮忙看一个C语言函数定义形参的问题

作者&投稿:学烟 (若有异议请与网页底部的电邮联系)
C语言中函数定义形参为数组时的问题~

1.数组为参数传递的是数组首地址,而不是元素的值,而你说的a[size]仅仅是值,况且事实上也没有a[size]这个元素
2.既然是数组名的传递,当然需要由一个数组的参数来接收,int v[]”的问题是因为他是形式参数,是为了接收数组的
n的问题是因为,如果只传递了数组,但是函数并找不到数组的个数,所以需要把数组大小传递过来

1. 形参可以是函数,第三个形参是说接受一个大小,大小的值是 __usr_data。
传递的时候,你直接传个整形数字就可以。 或者传个返回整形的函数也可以。

2.pc_set_defend(0x0F), 可以理解为函数只有一个参数,但是也有可能有多个参数,只不过其他参数系统默认处理了, 你不用去管他。 函数的参数是不限制的,也可以传函数进去,但要有一定的返回值,也就是不能为void,不然程序就传了空值。

不会出问题,你定义函数的参数名字,只不过是为了你自己好记忆,对于编译器来说根本无所谓,最后都变成了地址,而这两个参数的名字虽然一样,但是最后编译出来的结果肯定不一样。而且计算机也会知道你要将PageWrite的第一个参数当做参数传给WriteCMD并调用它。

形参的名字 之间 没有任何影响 并且和实参也只是单纯的赋值拷贝 又不是引用

哥哥喜欢这样定义:
int funca(int a,int b);
int xxxb(int a,int b,int c);
就写一个字母,多方便啊,你那个同事是新手,不用鸟他。


大家帮忙看看我的这段C语言程序在keil C51里为什么不能通过编译 高分...
void count(void) interrupt 0 using 0 { Delay(10);if(INT0==1) goto end00;Pass++;if(Pass==100) Pass=0;end00: ; 只要在这里加上冒号,就可以通过编译。} 你的错误提示,是说你的"REG51.H"文件内容有错误,而且不少。如果想省事,可以把这个文件删除,再重新安装KEIL,即可解...

C语言 看看哪错 读入一组大小为n(n<=10010)个样本数据(双精度浮点数...
先定义一个数字0到9对应的英文数组,之后计算输入数字的各位数之和,将这个数“倒序”,然后(用倒序后的数)从低位向高位输出对应的英文,在手机上用易历知食软件里的微C程序设计来编写个示例,供参考。手机上代码如下图所示:手机上运行效果如下图:...

大学c语言!!编程题 帮忙看看我做的答案有没有错误!!谢谢大家了。
\/*程序4 连续做10道题,通过计算机随机产生两个1~10之间的加数 给学生出一道加法运算题,如果输入答案正确,则显示“正确!”,否则显示“错误!”,不给机会重做,10道题做完后,按每题10分统计总得分,然后打印出总分和错误题总数。*\/ include "time.h"include "stdlib.h"include void main(void)...

c语言看程序写结果?
答案是:7。被调函数sub是一个递归函数,有两处注意点:一、参数1这里传递的是实参x的地址,因此sub函数中a地址里的值改变,x的值也变。二、注意sub中if没有大括号,作用域仅限下一句代码,也就说*a+=k;这句代码是在if作用域之外的。无论if判读成不成立,*a+=k;都会执行。所以按照递归顺序...

帮我看下这个c语言课设答辩老师可能会问的问题,顺便解答一下,感激不尽...
1、C语言基本概念,主要是程序循环,各个语句的表达语法及意义(这个是基本的);2、设计的总体思路,达到的目的结果;3、设计的过程,从主函数开始写程序...然后程序嵌套什什么什么的...有逻辑的叙述,重点说明你做了什么工作。4、重头戏,程序的调试过程(单片机程序的话),往往这部分大家都会忽略这个...

c语言题,本人新手,麻烦帮我看看这段代码!老是输出不正确。谢谢了。用1...
凑合看吧,你那个哪有问题我还没看出来,我也比较水,你看看我改这个,能用 include<iostream.h> void main(){ int x,y,z;int str[10];int s,j=0,temp;\/\/用于冒泡法排序 int a,b,c,d,e,f,g,h,i;int count,num=0,o=0;\/\/用于计数 x=122;L1:x++;y=2*x;z=3*x;a=x\/100...

哪位C语言大师帮帮忙,帮我看下这段代码哪里有错?谢谢!
改过的望采纳 include<stdio.h> include<stdlib.h> main(){ int n,x,i,one,two,three,four,five,six;float one_1,two_1,three_1,four_1,five_1,six_1;printf("请输入投掷次数:\\n");scanf("%d",&x);i=0;one=two=three=four=five=six=0;do { n=1+rand()%6;printf("%d \\n...

帮忙看一个C程序问题
symbol _workover是说你的程序里出现了没有对应模块的标识符,只要修改 一下就可以了*\/ \/*该程序作为考试题还可以,如果是实际项目开发使用,请使用有实际含义的符合一定标准(比如匈牙 利命名法)的命名方法,以便于维护和理解*\/ \/*上述是个人对C语言变量作用域的理解和粗略判断,仅供参考*\/ ...

如图帮忙看下这段代码的问题,刚学C,不太懂?
C语言中char res;表示res是字符类型,但注意是单个字符,只能容纳'a',不能容纳像"abcd"这样的字符串,想要通过运算符操作'='赋值、'+'连接,以及自动回收,请左转C++浏览STL ::std::string C语言中字符串一般是char[]或char C语言中返回字符串不能返回char[],因为函数不能返回一个数组,也不...

c语言高手看看下面这段程序哪里不对,任意输入十个数,并对其进行排序...
这个排序算法根本就不对,那段改成这个吧:for (k = 9; k >= 0; k--){ for (i = 0; i < k; i++){ if (a[i] > a[i + 1]){ temp = a[i];a[i] = a[i + 1];a[i + 1] = temp;} } } 这个是冒泡排序,下面的是选择排序:for (k = 0; k < 10; i++)...

德安县19536885300: 在c语言中形参与实参是如何定义的 -
寿管瑞奇: 在C语言中,形参即为形式参数.它在整个函数编译的时候,没有实际的数据赋于它,仅仅作于定义某个函数或者函数名.而实参既为实际参数.顾名思义,在函数中,有一个特定的数据赋值给它,可以作于在函数中进行运算.比如:void main(){int a=1,b;b=function(a); //a作于在函数中进行运算,是实参}int function(int c) //c作于定义function函数,是形参{}

德安县19536885300: 计算机c语言中什么是形参什么是实参?
寿管瑞奇: 例如:你自己定义一个函数 int max(int a,int b){... } 在这里a,b就是形参,接下来你会调用max函数,如: void main() { int c,int d; ..... max(c,d); } 这里c d就是实参 所谓形参就是在函数定义体中的参数 所谓实参就是在调用函数时实际传进函数的参数

德安县19536885300: 怎样定义C语言函数中的参数(实参、形参)??? -
寿管瑞奇: 不知道函数调用原理的话,很难说得清楚的.粗略的说在C中函数其实是分成三个部分,分别是声明、实现和使用.声明就是告诉C有这么个函数,实现就是这个函数的完整代码,使用则是调用这个函数帮你做运算或者是做事情.为了让函数能...

德安县19536885300: 请明确举例C语言中的形参与实参 -
寿管瑞奇: 形参:定义函数时,函数名后面括号中的参数.实参:调用函数是,函数名后面括号中的参数.用中学时一个简单的函数来举例,例如我们定义f(x)=3x+2;这里面的x就是形参,而f(2)=3*2+2这里面的那个2就是个实参

德安县19536885300: C语言中,什么是形参和实参?最好能举个例子! -
寿管瑞奇: 当定义函数时: void a(int a,int b)//这里的a和b就是形参 当调用a()时,我们需要这样写: a(2,5)//这里的2和5就是实参.

德安县19536885300: c语言中的实参与形参 -
寿管瑞奇: 子函数point(char *p) {p+=3;} 定义时,这里的p就是形参,起传递参数的作用,没有具体值,但是它不能改变主程序中的p.主程序中调用语句point(p);中的p是实参,因为它有具体的值.形参通过引用可以改变主程序中实参的值,运行一下下面的程序,看出什么结果.(子函数的形参前多了一个&)#include<stdio.h> void point(char*& p) {p+=3;} void main() { char b[4]={'a','b','c','d'}, *p=b;point(p);printf("%c\n", *p); }

德安县19536885300: C语言中如何用数组名作形参 -
寿管瑞奇: 直接用指针就好了,方便,拿上面的例子来改就是: void str(char * b){printf("%s",b); }main(){char a[]="ssssssss";char*p=a;str(p); }

德安县19536885300: C语言中的形参和实参的定义是什么?有什么区别 -
寿管瑞奇: 函数定义时候写的参数就是形参2113 调用函数,传递进取的参数就是实参举个例子吧,假设你定5261义一个 我要吃糖的函数:void 我要吃糖(string 某种糖) 这个就是4102形参了,因为这里只是个形式,并没有指1653明是给你什么糖吃,所专以是形参我要吃糖(棉花糖) 这个就是实参了,这样你就吃到棉花糖(实属参)了

德安县19536885300: C语言中什么是形参,什么是实参? -
寿管瑞奇: 参数传递主要用于模块化程序设计中.如果不了解参数传递是无法编写出正确的调用函数的.形参就是形式参数,用一个变量代表大家.实参就是实际参数,用一个 确切的数值代替形式参数,可以是表达式.实际参数与形式参数的参数个数、类...

德安县19536885300: C语言的形参和实参? -
寿管瑞奇: 函数参数列表里面的是形参. int fun(int a, int b)这里面的a,b是形参. 如果你调用了这个函数,比如: 变量名 = fun( 3 , 4 );这里面的3,4就是实参. return c,d;的意思是返回d的值. 这里牵扯到c语言中的逗号(,)运算符.逗号表达式最右边的子表达式的值即为逗号表达式的值.所以这里返回的是d的值. 在这里面是不可以返回c,d的值的.因为你的函数声明为返回一个int值,只能返回一个整星值,所以无法在main函数中调用fun函数获得c,d的值.除非你重写fun函数. 如果我的回答解决了你的额问题,请采纳!你的采纳是我回答的动力!

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网