为什么不能在main里面输出a=b+c的值
#include <stdio.h> void butler(int a,int b,int c) void butler(int a,int b,int c) { int a,b,c; a=b+c; scanf("%d%d",&b,&c); } int main(void) { butler(int a,int b,int c); printf("a=%d",a); system("pause"); return 0; }
#include void butler(int& a,int b,int c) { a=b+c; } int main(void) { int a=0,b,c; printf("请输入a和b的值:\n"); scanf("%d%d",&b,&c); butler(a, b, c); printf("a=%d\n",a); //system("pause"); return 0; }
我作了修改。原来程序中最大的问题是,函数butler的第一个参数的类型是int,无法把两个整数的和传出来。(你还可以试试通过函数值把两个整数的和传出来。) #include int main(void) { void butler(int *x, int y, int z); int a, b, c; scanf("%d%d", &b, &c); butler(&a, b, c); printf("a=%d\n", a); return 0; } void butler(int *x, int y, int z) { *x = y + z; }
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>