Kezdőoldal » Számítástechnika » Programozás » Miért nem szedi le az sscanf...

Miért nem szedi le az sscanf az egyenlőség jel utáni részt?

Figyelt kérdés

char *str="string1=string2";

char str1[128], str2[128];

sscanf(str, "%s=%s", str1, str2);

printf("str1: %s\n", str1);

printf("str2: %s\n", str2);


Az str1-be belekerül az egész str pedig ennek úgy kellene működnie, hogy str1-be a "string1" az str2-be pedig a "string2" kerül nem?

Hogyha egyenlőség jel helyett szóközt használok akkor szét szedi a szöveget a két külön részre.

Ez egyenlőség jellel miért nem működik?



2018. márc. 4. 04:17
 1/2 anonim ***** válasza:
2018. márc. 4. 09:58
Hasznos számodra ez a válasz?
 2/2 sharkxxx ***** válasza:

//Ha a %s nem az utolsó azonosító, akkor a szó után fehérkarakternek is kell lenni.

sscanf("string1=string2", "%s=%s", str1, str2); // nem működik

sscanf("string1 =string2", "%s =%s", str1, str2); // működik

sscanf("string1\t=string2", "%s\t=%s", str1, str2); // működik

sscanf("string1\n=string2", "%s\n=%s", str1, str2); // működik

2018. márc. 4. 11:29
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!