C/C++ načítavanie z klávesnice

Sekcia: Programovanie 01.03.2011 | 13:28
jano   Návštevník
Zdravím.

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
...
    • Re: C/C++ načítavanie z klávesnice 01.03.2011 | 15:38
      Avatar m4jkl   Používateľ
      http://www.cplusplus.com/reference/iostream/istream/get/

      s tym fgets by to malo podla mna fungovat spravne
      • Re: C/C++ načítavanie z klávesnice 01.03.2011 | 18:47
        jano   Návštevník
        To som čítal a nejde to ani s jedným.
    • Re: C/C++ načítavanie z klávesnice 01.03.2011 | 19:07
      jano   Návštevník
      A zabudol som povedať, že prvých asi "tisíc" krát tam pošle to posledné čo som zadal a až potom tam posiela nulový string
    • Re: C/C++ načítavanie z klávesnice 01.03.2011 | 19:12
      jano   Návštevník
      A ďalšie zaujímavé zistenie, že pokiaľ to skompilujem pre i386 tak to ide riadne, len amd64 haluzí. Takže je možné, že oni tam majú chybu.
      • Re: C/C++ načítavanie z klávesnice 01.03.2011 | 20:07
        Avatar m4jkl   Používateľ
        mozes sem hodit cely zdrojak?
      • Re: C/C++ načítavanie z klávesnice 01.03.2011 | 23:26
        Avatar Tomas Hreben OpenSuse 12.1 , win 7  Používateľ
        ahoj

        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.
        • Re: C/C++ načítavanie z klávesnice 02.03.2011 | 00:07
          Jano   Návštevník
          Mozem ti sem hodit len funkciu toho vlakna, ale uz som stihol odjebat cely os, myslel som, ze to mozno bude chyba v knizniciach wheeze, tak som sa pokusil o downgrade na squeeze a debo skapal:-( Uz zacinam pochybovat o tom, ze debian je vhodny na devel, kedze tam maju stale chyby, ktore boli nahlasene v r.2008 a este tam su.
        • Re: C/C++ načítavanie z klávesnice 02.03.2011 | 00:10
          Jano   Návštevník
          A ako si to ty vtedy vyriesil?