,我有这样的结构:里面的结构指针分配值
typedef struct{
int numCliente;
tCadena nombre;
char *iva;
int *tiposerv;
float *monto;
}tCliente;
,我有一个功能:
tCliente cargarUno(int numC){
tCliente reg;
char letra;
int serv;
float mon;
reg.numCliente=numC;
fflush(stdin);
printf("\nIngrese Nombre del cliente:");
leeCad(reg.nombre,20);
printf("\nIngrese condicion de IVA(M-Monotributista,R-Responsable Inscripto,E- IVA Exento):");
fflush(stdin);
scanf("%c",&letra);
®->iva = &letra;
fflush(stdin);
printf("\nIngrese tipo de servicio(1 2 3):");
scanf("%d",&serv);
®->tiposerv = &serv;
printf("\nIngrese monto a cobrar:");
scanf("%f",&mon);
®->monto= &mon;
return reg;
}
当我尝试显示结构,指针没有显示我放的值。
void mostrarUno(tCliente c){
printf("Numero del cliente:%d",c.numCliente);
printf("\n Nombre del cliente:%s",c.nombre);
printf("\n Condicion IVA:%c",*c.iva);
printf("\n Tipo de servicio:%d",*c.tiposerv);
printf("\n Monto a Cobrar:%f",*c.monto);
printf("\n");
printf("\n");
}
'fflush(标准输入);'调用*未定义的行为*在标准中,所以你不应该使用它。 – MikeCAT