Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C
Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C
Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Nu se recomandã citirea caracter cu caracter a unui sir, cu descriptorul “%c” sau<br />
cu functia “getchar()”, decât dupã apelul functiei “fflush”, care goleste zona tampon de<br />
citire. In caz contrar se citeste caracterul ‘\n’ (cod 10), care rãmâne <strong>în</strong> zona tampon<br />
dupã citire cu “scanf(“%s”,..) sau cu getchar().<br />
Pentru a preveni erorile de depãsire a zonei alocate pentru citirea unui sir se poate<br />
specifica o lungime maximã a sirului citit <strong>în</strong> functia “scanf”. Exemplu:<br />
char nume[30];<br />
while (scanf (“%30s”,nume) != EOF)<br />
printf (“%s \n”, nume); // numai primele 30 de caractere citite<br />
Memorarea unei liste de siruri se poate face <strong>în</strong>tr-o matrice de caractere <strong>în</strong> care<br />
fiecare linie din matrice reprezintã un sir, dar solutia este ineficientã dacã sirurile au<br />
lungime foarte variabilã, pentru cã numãrul de coloane din matrice este determinat de<br />
lungimea maximã a unui sir. Exemplu:<br />
char kwords [5][8] = {"int","char","float","long","double","short"};<br />
// cauta un cuvant in tabelul de cuv cheie<br />
int keyw ( char nume[8], char kw[][8], int n ) {<br />
int i;<br />
for (i=0;i