Hirdetés
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
prosoftware
#4327
üzenetére
A getchar() a sorvég jelet \n eszi meg mivel azt a scanf a [^\n] miatt nem tette meg. Persze bele lehetne oda is tenni.
-
prosoftware
csendes tag
válasz
prosoftware
#4326
üzenetére
scanf("%d%d%*[^\n]", &a, &b);
getchar();
scanf("%d", &c);
printf("%d %d %d\n", a, b, c);A getcharnak mi a szerepe itt? Ha jól néztem nélküle is működik.
-
Jester01
veterán
válasz
prosoftware
#4321
üzenetére
Nem ugyanazt csinálják, ha a sorban a két számon kívül még van valami és később azt is be akarod olvasni.
scanf("%d%d%*[^\n]", &a, &b);
getchar();
scanf("%d", &c);
printf("%d %d %d\n", a, b, c);Be:
1 2 3
4
Ki: 1 2 4Az első sorban a szám után bármi lehet, azt figyelmen kívül hagyja.
scanf("%d%d%", &a, &b);
scanf("%d", &c);
printf("%d %d %d\n", a, b, c);Be: 1 2 3
Ki: 1 2 3Itt a két szám után ami még a sorban volt az megmarad és a további beolvasások felhasználják. A formátumstringben az utolsó % jel pedig igenis elírás mivel annak ott semmi értelme nincs. Ugyanígy működik anélkül is, csak akkor még helyes is.
-
Jester01
veterán
válasz
prosoftware
#4318
üzenetére
Az első az megeszi az egész sort, a második az nem (a végén a % az gondolom elírás).
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Huawei P30 Pro 128GB,Újszerű,Dobozával,12 hónap garanciával
- Huawei P30 Pro 256GB,Átlagos,Adatkabel,12 hónap garanciával
- Apple iPhone 12 128GB,Átlagos,Adatkabel,12 hónap garanciával
- -ÚJ,2 ÉV GAR- GAMER PC: RYZEN 7 5700/5800X +RX 6600/6700XT +16-64GB DDR4! SZÁMLA! 70 féle ház!
- MacBook AIR 13 M1 CHIP! 8GB/256GB SSD Magyar! Fulldoboz! Akkumlátor 88%!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: ATW Internet Kft.
Város: Budapest


