Articles of scanf

C – tratando de leer un solo carácter desde stdin (y falla) w / scanf / getchar

como parte de una tarea, estoy tratando de leer un solo carácter de stdin y actuar de acuerdo con él: char choice; while (1) { printf(“please enter [y]es, [n]o or [m]aybe: “); scanf(“%c”, choice); fflush(stdin); // validate input if (choice == ‘y’ || choice == ‘n’ || choice == ‘m’) { break; } else { […]

Longitud máxima de cadena usando scanf -> ANSI C

Yo tengo: #define MAX_STR_LEN 100 y quiero ponerlo en el patrón scanf para poder controlar la longitud de la cadena: scanf(“%100[^\n]s”,sometext) Lo intenté: scanf(“%MAX_STR_LEN[^\n]s”,sometext) scanf(“%”MAX_STR_LEN”[^\n]s”,sometext) scanf(“%”,MAX_STR_LEN,”[^\n]s”,sometext) Y no funcionó. Solo quiero evitar el desbordamiento del búfer ya que “sometext” está asignado con malloc(MAX_STR_LEN) … ¿Algunas ideas?

Buscando el equivalente C # de scanf

Solía ​​codificar en lenguaje C en el pasado y encontré la función scanf muy útil. Desafortunadamente, no hay equivalente en C #. Estoy usando su uso para analizar archivos de texto semiestructurados. Encontré un ejemplo interesante de la implementación de scanf aquí . Desafortunadamente, parece viejo e incompleto. ¿Alguien sabe una implementación scanf C #? […]

Por qué scanf debe tomar la dirección del operador

Como dice el título, siempre me pregunto por qué scanf debe tomar la address of operador (&).

¿Scanf se cierra cuando lee una nueva línea?

Si ingreso 5 5 en el terminal, presione enter, y presione enter nuevamente, quiero salir del ciclo. int readCoefficents(double complex *c){ int i = 0; double real; double img; while(scanf(“%f %f”, &real, &img) == 2) c[i++] = real + img * I; c[i++] = 1 + 0*I; // most significant coefficient is assumed to be […]

Lectura de números de un archivo de texto en una matriz en C

Soy un novato en progtwigción así que por favor tengan paciencia conmigo. Intento leer números de un archivo de texto en una matriz. El archivo de texto, “somenumbers.txt” simplemente tiene 16 números como “5623125698541159”. #include main() { FILE *myFile; myFile = fopen(“somenumbers.txt”, “r”); //read file into array int numberArray[16]; int i; for (i = 0; […]

leer la entrada separada por comas con scanf

tengo la siguiente entrada: AG23,VU,Blablublablu,8 IE22,VU,FooBlaFooBlaFoo,3 and so on… Quiero que se “analice” con scanf usando un código como este: char sem[5]; char type[5]; char title[80]; int value; while(scanf(“%s,%s,%s,%d”, sem, type, title, &value) == 4) { //do something with the read line values } Pero la ejecución del código me da: illegale instruction ¿Cómo illegale […]

¿Cuándo debo usar el signo comercial con scanf ()?

¿Cuáles son las reglas para usar ampersand en c durante el uso de scanf() ? struct Student { char name[20]; int id; }; void main() { struct Student std1; printf(“enter name and id of std1\n”); scanf(“%s %d”, std1.name, &(std1.id)); } ¿Por qué para String no necesito usar el ampersand y para int tengo que usarlo? […]

¿Por qué Scanf no necesita un ampersand para cadenas y también funciona bien en printf (en C)?

Estoy aprendiendo sobre cadenas en C ahora. ¿Cómo se puede usar scanf para obtener una cadena que puedes hacer? scanf(“%s”,str1); y para printf puedes hacer printf(“The string is %s\n”, str1); Entiendo que para scanf es porque la cadena es solo una matriz de caracteres que es un puntero, pero para printf, ¿cómo es que puedes […]

While-loop ignora scanf la segunda vez

#include int main () { char loop=’y’; while(loop != ‘n’) { printf(“loop? “); scanf(“%c”, &loop); if(loop != ‘y’) { loop=’n’; } } return 0; } Si escribo ‘y’, reinicia el ciclo while, pero ignora el scanf la segunda vez y termina el ciclo después de eso. ¿Alguien puede ayudar?