- Milyen okostelefont vegyek?
- iPhone topik
- Apple Watch
- A hagyományos (nem okos-) telefonok jelene és jövője
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Fotók, videók mobillal
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Android alkalmazások - szoftver kibeszélő topik
- VoLTE/VoWiFi
Új hozzászólás Aktív témák
-
dobragab
addikt
válasz
MasterMark #3515 üzenetére
Szerintem EOF miatt, stringstream és fájl esetén máshogy lehet az EOF kezelés. EZT nézegesd.
Amúgy ez is szóba jöhet, ha mondjuk több beolvasás eredményét kell egyszerre ellenőrizned:
while(is.good()) {
// ...
}De ez csak tipp, pontosan nem néztem utána.
-
dobragab
addikt
válasz
MasterMark #3513 üzenetére
Jáj. Erre való az, hogy az istream tud bool-ra konvertálódni. Illetve C++98-ban nem is bool-ra, de úgy lehet használni, mintha. Ez más téma, és gány.
while (ss >> in){
// ...
} -
dobragab
addikt
válasz
MasterMark #3511 üzenetére
Elvileg ugyanúgy, elvégre mindkettő std::istream vagy std::ostream leszármazott.
-
jattila48
aktív tag
válasz
MasterMark #2955 üzenetére
Nincs ezzel baj. Itt nem lehet a break feltételt betenni a ciklusfeltételbe, mert break esetén kiírsz.
-
LordX
veterán
válasz
MasterMark #2955 üzenetére
if (egy[0].eleje > ketto[0].vege && !nemok) {
auto it = std::find_if( std::rbegin(ketto) //REVERSE begin (gondolom a db2 a 'ketto' konténer mérete)
, std::rend(ketto) //reverse end
, [&](auto&& elem) { return elem.vege < egy[0].eleje; } //keresett feltétel
);
if (it != std::rend(ketto)
kiiras(it->eleje, it->vege);
kiiras(egy[0].eleje, egy[0].vege);
} else { ... } -
jattila48
aktív tag
válasz
MasterMark #2934 üzenetére
Jó a break for ciklusban. A lineáris keresést csak példaként írtam. Ezek szerint neked az kell. Esetleg, ahogy írtam, a break feltételét (negálva) beépítheted a ciklusfeltételbe, és akkor nincs break.
-
jattila48
aktív tag
válasz
MasterMark #2911 üzenetére
Nem gáz a break. Egyszerű dolgot nem kell túlbonyolítani. Adott elemszámú tömbben lineáris keresésre tökéletes. Ha pl. az a feladat, hogy egy karaktertömbben sorban keresd ki az A betűket, akkor ez a legjobb megoldás. Ha függvényt használnál, akkor minden következő kereséshez nemcsak a tömböt, hanem a most megtalált indexet is át kell adni. Ez fölösleges bonyolítása a feladatnak. Ha nagyon nem akarsz break-et, akkor elképzelhető, hogy a kiugrási feltétel betehető a ciklusfeltételbe.
int i;
char tomb[100];
int hossz=sizeof(tomb);
for(i=0;i<hossz && tomb[i]!=feltetel;++i);
if(i<hossz){
//megtalaltad a kersett elemet, indexe i.
}for(i=0;i<hossz;++i){
if(tomb[i]==feltetel)break;
}helyett.
C++ programozóknál gyakori hiba, hogy hajlamosak "túldizájnolni" a programot. Egy ilyen egyszerű feladathoz pl. nem biztos, hogy az STL-t kell használni. Nagy, és lassabb lesz tőle a kód.
-
ToMmY_hun
senior tag
válasz
MasterMark #2917 üzenetére
Nem általános igazság, de egészen jól működik a következő. Amennyiben indexelned kell, akkor használj for ciklust, mert megoldja egy sorban az inkrementálást is. Akkor, ha egy feltétel teljesülésére vársz, akkor használj while-t. Egyébként ebből ne csinálj olyan nagy ügyet, használd azt amelyik az adott feladat ellátásra jobban átlátható, ésszerűbb.
-
válasz
MasterMark #2911 üzenetére
Nincs ilyen szabaly, hasznald azt a megoldast, ami az adott helyzetben leginkabb atlathato es legkonnyebben ertelmezheto.
-
sztanozs
veterán
válasz
MasterMark #2911 üzenetére
tömbben keresésnél kifejezetten ildomos (felesleges tovább iterálni).
-
MasterMark
titán
válasz
MasterMark #2903 üzenetére
Storno, megvan, csak késő van, szóval helyesen:
eredmeny[i] = tomb[i+1] - tomb[i];
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Milyen okostelefont vegyek?
- Ez lenne a népkártya? Teszten a GeForce RTX 5060 Ti 16 GB
- 5.1, 7.1 és gamer fejhallgatók
- Fejhallgató erősítő és DAC topik
- Autós topik
- PlayStation 5
- Milyen belső merevlemezt vegyek?
- Socket AM4
- WoW avagy World of Warcraft -=MMORPG=-
- Milyen légkondit a lakásba?
- További aktív témák...
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070Ti 16GB GAMER PC termékbeszámítással
- Apple iPhone 13 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Wacom Cintiq DTK-2260 - Digitális rajztábla
- HP 635 laptop eladó
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest