abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:00 | IT novinky

    Notebook NitroPad V56 od společnosti Nitrokey byl oficiálně certifikován pro Qubes OS verze 4. Qubes OS (Wikipedie) je svobodný a otevřený operační systém zaměřený na bezpečnost desktopu.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | IT novinky

    Multiplatformní hororová adventura Whispering Willows je na portále GOG.com zdarma, akce trvá do 6. října.

    Fluttershy, yay! | Komentářů: 0
    včera 14:33 | Komunita

    Na čem aktuálně pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za září (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | Nová verze

    Byla vydána nová verze 1.50.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Vypíchnout lze podporu nastavení veth (virtual ethernet) v nmtui.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | Nová verze

    Byla vydána nová verze 24.1 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Xahea. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | Nová verze

    Mobilní Datovka, tj. svobodná aplikace pro přístup k datovým schránkám pro zařízení s operačním systémem iOS a Android, byla vydána v nové verzi 2.1.0. Nově je pro sestavení potřeba Qt 6.7.

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | IT novinky

    Přesně před 35 lety, 3. října 1989, byla vydána počítačová hra Prince of Persia. Jejím tvůrcem je Jordan Mechner.

    Ladislav Hagara | Komentářů: 4
    2.10. 14:44 | IT novinky

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu zářijový souhrn novinek. Po půl roce od předchozího. Vypíchnout lze nové desky StarPro64, Oz64 a Quartz64-Zero.

    Ladislav Hagara | Komentářů: 0
    2.10. 13:44 | IT novinky Ladislav Hagara | Komentářů: 8
    2.10. 06:33 | Humor Ladislav Hagara | Komentářů: 7
    Rozcestník

    Dotaz: undefined reference to itoa ()

    7.11.2006 21:50 xsustek | skóre: 6
    undefined reference to itoa ()
    Přečteno: 847×
    Prosim vas, mohol by mi niekto pomoct. Som uply zaciatocnik v C a mam problem ked kompilujem kod. Prekladac mi vypisuje undefined reference to itoa (). Pokilal som dobre pozeral tato funkcia by mala byt sucastou stdlib.h. Takze nechapem co ten linker potrebuje nalinkovat. Ak niekto bude vediet, mozte mi napisat aj ako to nalinkujem. Dakujem.

    Odpovědi

    7.11.2006 21:54 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    funkce itoa() opravdu neexistuje...
    7.11.2006 23:16 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    Na některých platformách asi ano (nejspíš inverze k atoi()), ale ne v POSIXu ani v dalších rozšířeních glibc; tipoval bych, že jde o pokus přeložit program psaný původně pro nějakou jinou platformu. Takhle to dopadá, když se nepoužívá -Wall nebo se ignorují varování překladače.
    8.11.2006 10:46 ams | skóre: 10
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    #include <stdio.h>
    #include <string.h>
    
    /*
    Converts an integer value to a null-terminated string using 
    the specified radix and stores the result in the given buffer.
    If radix is 10 and value is negative the string is preceded by 
    the minus sign (-). With any other radix, value is always considered 
    unsigned. buffer should be large enough to contain any possible value: 
    (sizeof(int)*8+1) for radix=2, i.e. 17 bytes in 16-bits platforms 
    and 33 in 32-bits platforms.
    Parameters:
     value    Value to be represented as a string. 
     buffer   Buffer where to store the resulting string. 
     radix    Numeral radix in which value has to be represented, between 2 and 36. 
    Return Value:
     A pointer to the string. 
    No error checking is performed.
    */
    char* itoa (int value, char* buffer, int radix)
    {
            if ( radix == 10 ) {
                    sprintf (buffer, "%d", value);
            } else {
                    char tmp_buffer[ sizeof(int)*8 + 1 ];
                    char *ptr = &tmp_buffer[ sizeof(int)*8 ];
                    unsigned n = value;
                    *ptr-- = 0;
                    do {
                            *ptr-- = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" [n % radix];
                            n /= radix;
                    } while ( n );
                    strcpy (buffer, ++ptr);
            }
    }
    
    int main ()
    {
            int  value, radix;
            char buffer[sizeof(int)*8 + 1];
            while (1) {
                    printf ("Value (decimal): "); scanf ("%d", &value);
                    printf ("Radix (2 .. 36): "); scanf ("%d", &radix);
                    if ( radix < 2 || radix > 36 ) {
                            printf("Good bye!\n");
                            return 0;
                    }
                    itoa (value, buffer, radix);
                    printf("Result: %s\n", buffer);
            }
    }
    
    8.11.2006 10:46 ams | skóre: 10
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    #include <stdio.h>
    #include <string.h>
    
    /*
    Converts an integer value to a null-terminated string using 
    the specified radix and stores the result in the given buffer.
    If radix is 10 and value is negative the string is preceded by 
    the minus sign (-). With any other radix, value is always considered 
    unsigned. buffer should be large enough to contain any possible value: 
    (sizeof(int)*8+1) for radix=2, i.e. 17 bytes in 16-bits platforms 
    and 33 in 32-bits platforms.
    Parameters:
     value    Value to be represented as a string. 
     buffer   Buffer where to store the resulting string. 
     radix    Numeral radix in which value has to be represented, between 2 and 36. 
    Return Value:
     A pointer to the string. 
    No error checking is performed.
    */
    char* itoa (int value, char* buffer, int radix)
    {
            if ( radix == 10 ) {
                    sprintf (buffer, "%d", value);
            } else {
                    char tmp_buffer[ sizeof(int)*8 + 1 ];
                    char *ptr = &tmp_buffer[ sizeof(int)*8 ];
                    unsigned n = value;
                    *ptr-- = 0;
                    do {
                            *ptr-- = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" [n % radix];
                            n /= radix;
                    } while ( n );
                    strcpy (buffer, ++ptr);
            }
    }
    
    int main ()
    {
            int  value, radix;
            char buffer[sizeof(int)*8 + 1];
            while (1) {
                    printf ("Value (decimal): "); scanf ("%d", &value);
                    printf ("Radix (2 .. 36): "); scanf ("%d", &radix);
                    if ( radix < 2 || radix > 36 ) {
                            printf("Good bye!\n");
                            return 0;
                    }
                    itoa (value, buffer, radix);
                    printf("Result: %s\n", buffer);
            }
    }
    
    8.11.2006 10:52 ams | skóre: 10
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    Omlouvam se za 2-krat vlozeny prispevek. Chtel jsem vlozit upravenou verzi programu a nejak mi to odeslalo podruhe. Spravne by na konci funkce itoa melo stat return buffer;. Takze nejak takto:
                    } while ( n );
                    strcpy (buffer, ++ptr);
            }
            return buffer;
    }
    
    21.2.2007 19:20 nobody important
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    funce itoa() existuje

    do hlavičky hezky

    #include <stdlib.h>

    a pak už jen

    itoa(I,S,i)

    kde I je vstupní integer; S výstupní string a i je soustava (2-dvojkova;8-osmičková;10-desítková;16-hexadecimální)
    Luboš Doležel (Doli) avatar 21.2.2007 19:47 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()
    $ grep itoa /usr/include/gentoo-multilib/amd64/stdlib.h
    $
    ?
    21.2.2007 22:04 Ash
    Rozbalit Rozbalit vše Re: undefined reference to itoa ()

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.