C语言函数调用的三种方式并分别举一例。
1、值传递,创建变量x和y,x的值等于a的值,y的值等于b的值
创新互联公司长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为麻山企业提供专业的成都做网站、网站设计,麻山网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
void Exchg1(int x, int y)
{
int tmp;
tmp=x;
x=y;
y=tmp;
printf(“x=%d,y=%d/n”,x,y)
}
void main()
{
int a=4,b=6;
Exchg1 (a,b) ;
printf(“a=%d,b=%d/n”,a,b)
}
2、地址传递,相当于建立了px和py两个指向整型的指针,其值分别为a和b的地址
Exchg2(int *px, int *py)
{
int tmp=*px;
*px=*py;
*py=tmp;
print(“*px=%d,*py=%d/n”,*px,*py);
}
main()
{
int a=4;
int b=6;
Exchg2(a,b);
Print(“a=%d,b=%d/n”, a, b);
}
3、引用传递,x和y直接引用a和b,对a和b操作,相当于给a、b起了别名x、y
Exchg2(int x, int y)
{
int tmp=x;
x=y;
y=tmp;
print(“x=%d,y=%d/n”,x,y);
}
main()
{
int a=4;
int b=6;
Exchg2(a,b);
Print(“a=%d,b=%d/n”, a, b);
}
扩展资料:
printf用法:
printf()函数的调用格式为:printf("lt;格式化字符串gt;",lt;参量表gt;)。
其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。
参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。
比如:
int a=1234;
printf("a=%d\n",a);
输出结果为a=1234。
C语言中如何编写一个字符串复制函数,并在主函数中调用它。
#includestdio.h
char *custom_cpy(char *to,char *from);
int main(int argc,char *argv[]){
char *from = "i like c langanger";
char to[30];
char *ptr = custom_cpy(to,from);
printf("%s,%s\n",ptr,to);
return 0;
}
char *custom_cpy(char *to,char *from){
if(to == NULL || from == NULL){
return NULL;
}
char *p = to;
for(;*from!='\0';from++,to++){
*to = *from;
}
*to = '\0';//拷贝完毕之后一定要加一个结束符号
return p;
}
扩展资料:
字符串相关函数应用:
1. 连接运算 concat(s1,s2,s3…sn) 相当于s1+s2+s3+…+sn。
例:concat(‘11’,'aa’)='11aa’;
2. 求子串。 Copy(s,I,I) 从字符串s中截取第I个字符开始后的长度为l的子串。
例:copy(‘abdag’,2,3)=’bda’;
3. 删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符开始后的长度为l的子串。
例:s:=’abcde’;delete(s,2,3);结果s:=’ae’;
4. 插入子串。 过程Insert(s1,s2,I) 把s1插入到s2的第I个位置
例:s:=abc;insert(‘12’,s,2);结果s:=’a12bc’;
5. 求字符串长度 length(s) 例:length(‘12abc’)=5;
参考资料:
百度百科-字符串
c语言,这个题怎么调用字符串函数实现?会这样做,不会调用函数,求解
你这样做是调用函数了,虽然用的是memcpy函数,但也是函数。
不调用函数的做法,是使用循环,逐字符复制,直到字符串结束符'\0'。
void nofunc(char *src, char *dest)
{
int i;
for (i=0; src[i] != '\0'; i++)
dest[i] = src[i];
dest[i] = '\0';
}
调用函数的做法,是使用strcpy()函数,而不是使用memcpy。
strcpy(dest, src);
这俩的区别在于,strcpy会把字符串结束符'\0'复制过来,而memcpy则不会判断是否结束,而是按指定的长度来复制。如果使用memcpy,你复制的长度必须是strlen+1才行。你这个程序,如果目的字符串不是刚刚好与源字符串长度相等的话,就能看出有错误。
char *src = "abc";
char dest[100];
strcpy(dest, "123"); /* 目的字符串刚好也是3个字符 */
memcpy(dest, src, strlen(src));
printf("[%s]\n", dest); /* 如果这样调用,结果是正常的,刚好是abc */
strcpy(dest, "12345");
memcpy(dest, src, strlen(src));
printf("[%s]\n", dest); /* 如果这样调用,结果是错误的,应该是abc45 */
/* 而使用strcpy就不会有问题 */
strcpy(dest, "12345");
strcpy(dest, src);
printf("[%s]\n", dest); /* 这样调用结果就是正确的abc */
C语言中,主函数输入了一个字符串,怎样在函数调用里也使用这个字符串?
函数里面定义的变量只能在这个函数内部使用……因此main函数定义的 l 和s不能在count里面用……
分享文章:c语言字符串函数的调用 c语言字符串操作相关函数
分享URL:http://scgulin.cn/article/dodpide.html