ciusss89
23-09-2011, 08:13
Buon giorno,
Ho la necessità di usare una gets preceduta da uno scanf.
ESEMPIO A:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define QCAR 29+1
#define QDATA 8+1
int main(){
char KEY[QCAR],KEYop[QCAR];
scanf("%s",KEY);
gets(KEYop);
printf("\n %s - %s",KEY,KEYop);
retur 0;
}
Se provate a compilarlo, si nota che, ci viene permessa l'introduzione del dato da tastiera solo quando viene eseguita la scanf, in questo codice, la gets è come se non fosse presente.
ESEMPIO B
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define QCAR 29+1
#define QDATA 8+1
int main(){
char KEY[QCAR],KEYop[QCAR];
gets(KEYop);
scanf("%s",KEY);
printf("\n %s - %s",KEY,KEYop);
retur 0;
}
Funziona come ci si aspetta, cioè vengono acquisiti da tastiera in 2 momenti diversi degli input.
Come è possibile che se la gets la metto sopra viene "eseguita", e se sta sotto no?
Ho la necessità di usare una gets preceduta da uno scanf.
ESEMPIO A:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define QCAR 29+1
#define QDATA 8+1
int main(){
char KEY[QCAR],KEYop[QCAR];
scanf("%s",KEY);
gets(KEYop);
printf("\n %s - %s",KEY,KEYop);
retur 0;
}
Se provate a compilarlo, si nota che, ci viene permessa l'introduzione del dato da tastiera solo quando viene eseguita la scanf, in questo codice, la gets è come se non fosse presente.
ESEMPIO B
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define QCAR 29+1
#define QDATA 8+1
int main(){
char KEY[QCAR],KEYop[QCAR];
gets(KEYop);
scanf("%s",KEY);
printf("\n %s - %s",KEY,KEYop);
retur 0;
}
Funziona come ci si aspetta, cioè vengono acquisiti da tastiera in 2 momenti diversi degli input.
Come è possibile che se la gets la metto sopra viene "eseguita", e se sta sotto no?