C 接收垃圾的功能
我试图在一个菜单上创建一个函数,它用用户选择的字符打印半个三角形,但是当它通过引用接收参数时,它会接收垃圾,不知道为什么。如果有人能帮助我,我将不胜感激C 接收垃圾的功能,c,parameters,C,Parameters,我试图在一个菜单上创建一个函数,它用用户选择的字符打印半个三角形,但是当它通过引用接收参数时,它会接收垃圾,不知道为什么。如果有人能帮助我,我将不胜感激 case 2: do{system("cls"); cuadro (1,1,78,24); gotoxy(20,10);printf("Please enter number from 3 to 10 and character wanted:"); scanf("%d %d", &num, &car)
case 2: do{system("cls");
cuadro (1,1,78,24);
gotoxy(20,10);printf("Please enter number from 3 to 10 and character wanted:");
scanf("%d %d", &num, &car);
fflush(stdin);
if(num<3||num>10||car>255||car<0){
gotoxy(20,10);printf("Not what asked, Enter Again.");
fflush(stdin);
getchar();
}
}while(num<3||num>10||car>255||car<0);
Tri(&num,&car);
break;
案例2:do{system(“cls”);
cuadro(1,1,78,24);
gotoxy(20,10);printf(“请输入3到10之间的数字和所需字符:”);
scanf(“%d%d”,&num,&car);
fflush(stdin);
如果(num10 | | car>255 | | car 255 | | | carC没有参考参数。当您将car
直接传递到printf
时,您正在打印car
本身的值,它是一个指向保存您实际想要打印的值的变量的指针。使用printf(“%C”,*car)
打印汽车所指向的值
我看到了其他几个错误。另外,我也不清楚您为什么首先编写Tri
来获取指针参数。您将指针传递给num和car,&num和&car。在函数Tri中,num和car是指向值的指针。因此,在Tri中,更改为deref。例如,更改“while”(fB由于这是实践的要求,仍然感谢您的评论和帮助。
void Tri(int*num,int*car){
int f=1, c=1;
system("cls");
while(f<=num){
c=1;
while(c<=f){
printf("%c",car);
c++;
}
printf("\n");
f++;
}
fflush(stdin);
getchar();
}