

borland C-nacitanie n znakov s medzerami z klavesnice
Zdravim, potrebujem pomoct s nacitanim n znakov(moze obsahovat aj medzere)-mam to nejak takto:
....
typedef struct{
char meno[20];
char priezvisko[30];
} clovek;
void nacitaj(char udaj[],int poc)
{int i=0,j=0;
for (j=0;j<poc;j++)
udaj[j]='\0';
i=0;
while ((j=getchar())!='\n')
{if (i<(poc-1))
{udaj[i]=j;
i++;}
else break;}}
void main(void)
{clrscr();
printf("Zadaj meno(max 20 znakov):\n");
nacitaj(osoba.meno,20);
printf("Zadaj priezvisko(max 30 znakov):\n");
nacitaj(osoba.priezvisko,30);
printf("\nMeno: %s",osoba.meno);
printf("\nPriezvisko: %s",osoba.priezvisko);
getch();}
...problem ale je, ze ked sa prvy string(meno) zada dlhsi ako 20 znakov, tak sa tie prebytocne znaky nacitaju do toho dalsieho stringu(prieyvisko). Poradte mi, ako to spravit(a aby to bolo cim jednoduchsie). dik.
Preboha, to si od koho opisal ze sa v tom ani nevyznas?
treba vyhodit to
else break;}}
resp dat namiesto toho
else i++;}}
alebo da sa to i++ dat mimo if.