C/C++ načítavanie z klávesnice
V programe mám jedno vlákno a to sa stará o načítavanie príkazov z klávesnice. Neviem ako je to možné, alebo čo to môže spôsobovať???, ale
cin.get(cmd,cmdlen); aj fgets(cmd,cmdlen-1,stdin);
spôsobojú jednu anomáliu, a to, že keď niečo pomocou nich načítam, tak potom sa zrazu do vstupu tlačia stále samé nuly, čiže premenná cmd potom vždy obsahuje na prvom mieste nulu, cmd[0]==0;
Uvediem príklad
do
{
cin.get(cmd,cmdlen);
cout<<"nacital si prikaz "<<cmd<<endl;
}while(strcmp(cmd,"exit")!=0);
V tomto prípade, program na začiatku čaká, ale pokiaľ niečo programu zadám, potom sa stane nasledovná vec a to že, akoby po mojom zadanom príkaze potom stále do vstupu prichádzali nulové reťazce. Čiže výpis bude:
nacital si prikaz blablabla
nacital si prikaz
nacital si prikaz
nacital si prikaz
...
Pre pridávanie komentárov sa musíte prihlásiť.
s tym fgets by to malo podla mna fungovat spravne
s timto problemom som sa aj ja stretol moze to byt sposobene ze amd64 pouziva ine adresovanie ako i386. A tu chybu co popisujes, tak by mi pomohlo keby som videl cely zdrojak.