Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

ucitavanje integer#string#integer

[es] :: C/C++ programiranje :: C/C++ za početnike :: ucitavanje integer#string#integer

[ Pregleda: 1628 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

miniplazma

Član broj: 240037
Poruke: 68
*.crnagora.net.



Profil

icon ucitavanje integer#string#integer24.12.2010. u 10:45 - pre 162 meseci
Kako sa standardnog ulaza učitam ovakav unos:
integer#string#integer

Npr. 2#blabla#6
Probam ovako ali nije dobro
scanf("%[^#]%*c%s*c%d*c", &i1, string, &i2 );

Trebalo bi da učita:
i1=2
string="blabla"
i2=6
 
Odgovor na temu

idb
Ivan Bulic
Beograd

Član broj: 4436
Poruke: 402



Profil

icon Re: ucitavanje integer#string#integer24.12.2010. u 16:51 - pre 162 meseci
Nikada mi do kraja nilsu "prirasli za srce" parametri funkcije scanf.
U ovom slucaju ja bi izabrao funkciju strtok, pogotovo kada treba da se učita više promenljuvih.
Code:
// Code::Blocks & MinGW 4.4.1

#include <stdio.h>
#include <stdlib.h>
int main() {
    int i, j;
    char str[80],
         line[80],
         tmp[80];
    gets(line);
    char * pch = strtok( line, "#" );
    if ( pch != NULL ) {
        i = atoi(pch);
        pch = strtok( NULL, "#" );
        if ( pch != NULL ) {
            sprintf( str, "%s", pch );
            pch = strtok( NULL, "#" );
            if (pch != NULL)
                j = atoi(pch);

        }
    }
    printf( "i   = %d\n", i );
    printf( "str = %s\n", str );
    printf( "j   = %d\n", j );
    return 0;
}

... a ti sada vidi da li ti ovako odgovara, izgleda duže ali je meni preglednije.
Pozrdav.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: ucitavanje integer#string#integer

[ Pregleda: 1628 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.