[ miniplazma @ 24.12.2010. 10:45 ] @
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 |
[ miniplazma @ 24.12.2010. 10:45 ] @
[ idb @ 24.12.2010. 16:51 ] @
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. Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|