Red de conocimientos sobre prescripción popular - Remedios caseros - En lenguaje C, cuando int y char se usan juntos, como scanf(" d c c ");, ¿por qué es necesario agregar un espacio delante de c?

En lenguaje C, cuando int y char se usan juntos, como scanf(" d c c ");, ¿por qué es necesario agregar un espacio delante de c?

Dios, algunas personas responden solo para verse bien.

La cosa es así: "d c c" sin espacios,; uno, ampb amp;c Cuando ingresas "3 E y F vacías", la primera es una forma, y ​​naturalmente cambiará lo que ingresaste El número se asigna a la primera A, el segundo es un espacio, que se asignará a B como carácter, y el tercero es E, que se asignará a c. El programa pensará que la asignación se ha completado. e ignorará la siguiente "F vacía".

El resultado es a=3, b= ' ', c='e '

Puedes probarlo así

# include ltstdio.h gt

Troncal largo()

{

Largo a;

char b, c;

scanf( "dcc ", amp one, ampb amp c); //Ingresa "3 vacío e vacío f"

printf("c\n ", c); //La variable de salida c es 'e); '

Devuelve 0;

}