Új hozzászólás Aktív témák
-
Jhonny06
veterán
válasz h1ght3chzor #1500 üzenetére
Én a CodeToGo-t használtam egy ideig, de nem tud sokat, úgyhogy ne várj csodát. Jobb szerintem nincs.
-
peterszky
őstag
Ahogy néztem, a két fellelhető Qt téma eléggé halott, plusz Doc itt is megfordul, mint a téma egyik szakértője
Szóval két kérdésem lenne:
1. Az összeg mezőnél: van-e lehetőség, hogy ne ezt a tudományos alakot használja a nagy számokhoz? Az átméretezés nem segít.
2. Van-e olyan lehetősége a QTableViewnak, hogy kijelölni csak egy egész sort lehessen, mezőket egyenként ne, meg több sort se?
What else you gonna do on a Saturday?
-
Lacces
őstag
Sziasztok!
Mi a különbség a sima C++ és a Visual C++ között?
-
doc
nagyúr
válasz peterszky #1502 üzenetére
meghogy szakerto... azert jol esett, koszonom
Qt-ben MINDENT lehet termeszetesen azt is amit te szeretnel
a (mellesleg peldaertekuen profi) doksibol kiderul hogyan1) igy hirtelenjeben nem tudok egyszeru megoldast ra (bar konnyen meglehet hogy van), de ha egy altalad kivalasztott delegate-et hasznalsz, konnyen megadhatod barmilyen elkepzelheto es elkepzelhetetlen modon hogy hogyan jelenjen meg, de azt is csinalhatod hogy az egyes indexekhez widgeteket rendelsz (ez utobbi azert SZVSZ nem tul elegans megoldas). de mondom, konnyen meglehet hogy van ra egyszeru megoldas, kicsit nezz korul a Qt doksiban, lehet hogy gyorsan rabukkansz
2) ajanlom figyelmedbe a setSelectionModel metodust (bovebben: [link]) a bonyolultabb kijelolesi modokhoz, illetve a setSelectionBehaviourt az egyszerubbekhez (mint pl. a teljes sor kijelolese)
lacces:
mar kaptal ra egy korrekt valaszt, annyival egeszitenem ki, hogy a Visual C++ az CSAK Visual Studio, barhol mashol csak allsz mint 'gyerek a szarban', mig a normal, standard C++ -szal barhova mehetsz, mindenhol mukodni fog (marmint a normalisan megirt kod)[ Szerkesztve ]
-
doc
nagyúr
a jovore nezve egyebkent nem feltetlenul rossz valasztas, szoktak keresni kimondottan Visual C++ -os embereket allashirdetesekben
az mar az en szemelyes nyomorom, hogy nem vagyok hajlando Visual C++ -ban dolgozni, mar azt is igyekszem elkerulni hogy windowst kelljen latnom -
-
h1ght3chzor
őstag
Segítséget szeretnék kérni, az alábbi kódrészletben hol a hiba?
Project* temp1 = new Project [getprojektmeret()];
for(int i=0;i<getprojektmeret();++i){
temp1[i]=tomb[i];
}
delete[] this->tomb;
this->tomb=new Project [this->getprojektmeret()+1];
int k;
for(k=0;k<getprojektmeret();++k){
Memory::tomb[k]=temp1[k];
}
Memory::tomb[k]=a;
delete[] temp1;Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
válasz h1ght3chzor #1510 üzenetére
(memműveletekben annyira nem vagyok jó)
szerintem itt a getprojectmeret lesz a hunyó, elvileg az a Memory classhoz tartozik, és a projectméret által visszaadott változó nem lesz updatelve az új, egyel nagyobb értékre. magyarul a következő másolásnál elveszik az utolsó eleme a tömbnek..
vagy esetleg fel lehet még hozni a hungrish elnevezéseket, meg az elnevezési konvenciók figyelmen kívül hagyását (getProjectSize / get_project_size), bár valszeg nem azokra gondoltak
Don't dream it, be it. // Lagom amount.
-
h1ght3chzor
őstag
válasz proci985 #1511 üzenetére
Getprojektmeretet szépen megkapom, azzal nincs probléma, itt vmi olyan érdekes dolog történt, hogy a tomb az egy Project* típusú, és mikor a for ciklusban visszamásolom az értékét a temp-ből, akkor az szépen meg is történik, de mikor a tomb[k], tehát az egyel nagyobbi részébe szeretném elmenteni az új projektet amit kaptam, akkor ott mintha nem is Projekt* tomb típusba mentené, hanem Projekt tomb[k]. Tehát gyakorlati példánál, ahol teszteltem: 1. Projekt amit elmentek nev: 1 meret: 1, ezt szépen el is menti, stb, 2. Projekt nev:2 meret:2, és ezt, a 2. Projektet menti el a Projekt tomb[k]-ba, és nem a Projekt* tomb-nek az elemei közé...
Egy kép róla: http://www20.zippyshare.com/v/10637883/file.html
Nem tudom mennyire érthető amit leírtam, ha vki gondolja, szívesen átküldöm az egész kódot.A getprojektmeret a Memory classhoz tartozik igen.
[ Szerkesztve ]
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
h1ght3chzor
őstag
válasz h1ght3chzor #1513 üzenetére
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
Jhonny06
veterán
válasz h1ght3chzor #1514 üzenetére
Nekem ez a sor gyanús, szerintem valami indexeléssel kapcsolat hiba lesz:
this->tomb=new Project [this->getprojektmeret()+1];
-
doc
nagyúr
"Memory::tomb[k]=temp1[k];"
ha a masodik getprojectmeret()+1 nem ugyanakkora vagy kisebb mint az elso getprojectmeret(), akkor tulcimzed a temp1 tombot
-
ArchElf
addikt
válasz h1ght3chzor #1510 üzenetére
Én ezt a getprojektmeret() hívást egyszer tenném be egy változóba és az egész eljárás alatt azt a változót használnám (gyorsabb és egyszerűbb is).
Amúgy mit csinál a getprojektmeret() metódus? Megnézi mekkor a tomb mérete?
Mert itt az elözö sorban épp törlöd a tömböd...
//...
delete[] this->tomb;
this->tomb=new Project [this->getprojektmeret()+1];
//...AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz Jhonny06 #1519 üzenetére
így nem megy?
int pm = getprojektmeret();
Project* temp1 = new Project [pm];
for(int i=0;i<pm;++i){
temp1[i]=tomb[i];
}
delete[] this->tomb;
this->tomb=new Project [pm+1];
int k;
for(k=0;k<pm;++k){
Memory::tomb[k]=temp1[k];
}
Memory::tomb[k]=a;
delete[] temp1;Amúgy így nem jó?
int pm = getprojektmeret();
Project* temp1 = new Project [pm+1];
for(int i=0;i<pm;++i){
temp1[i]=tomb[i];
}
temp1[i] = a
delete[] this->tomb;
this->tomb = temp1;AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
szerintem lehet egyel nagyobb is az eredeti tömbméretnél. leírás alapján nekem ez egy Cben használt dinamikus tömb megoldásnak tűnik. más kérdés, hogy nem értem, hogy ez minek C++ alatt, amikor ott vannak a beépített funkciók.
h1ght3chzor:
Memory::tomb[k]=a;a az itt micsoda? honnan jön? mi a típusa? szerintem ez is lehet baj.
tippek:
- használj változóneveket angolul, konvenciókkal. pl class scope változóneveknél m előtag sokkal átláthatóbb kódot eredményez.
- a this és Class:: jó móka, de legyél velük koherens
- ha nem ez volt a lényeg, akkor használd a beépített C++ funkciókat. vannak szép dinamikus listák, ez nem C. ArrayListel egy sima add() meghívásával megoldható a problémád
- getProjektMeret redundanciát és több helyen tárolt változókat jelent, amiket pl a mutatott kód alapján nem is updateltél. szerencsésebb a tömb méretét nem letárolni külön, vagy létrehozni egy külön container classot, ha mndenképpen sajátot akarsz írni.
(másképp: ránézésre vizsgafeladatnak hittem a problémád, annyira spagettiszerű. ez hosszú távon nem jó)ArchElf: még azon gondolkodtam el, hogy a tömbnél a tárolás hogy van megoldva, mert a delete[] elvileg csak a mutatókat törli implementációfüggően. nem vagyok benne biztos, de ez nekem gyanús, hogy leakelni fog (pl saját operator= segítségével nem).
WonderCSabo: tippeltem, illetve tippelek.
temp1[i]=tomb[i];
this->tomb=new Project [this->getprojektmeret()+1];
Memory::tomb[k]=temp1[k];mivel egy dinamikus tömböt megvalósító funkcióról van szó arrayekkel, a két tombnek elvileg ugyanoda kéne kerülnie. a két kódrészlet futás után csak akkor egyezik, ha ugyan ahhoz a classhoz tartoznak. hacsak nem tomb egyszerre van deklarálva globális változóként és a Memory class változójaként (és a this miatt ebben az osztályban) is, de az azért erős lenne. ha viszont eléri a tomb[]ot innen, tomb[], Memory::tomb[] és this->tomb[] megoldásokkal is, akkor jelen pillanatban a Memory classban kell lennünk, másképp három különböző tömbről lenne szó. habár, a this->tomb sor kiakad, szóval lehet, hogy mégse így van. ebből következtettem, hogy ha ez így működik, akkor a Memory classban kell lenni.
getprojektmeretnek classfunctionnak kell lennie, ami eltárolja az elvárt projektméretet és nem a tomb méretét adja vissza (egyébként az új projektnél kiakadna).
Don't dream it, be it. // Lagom amount.
-
h1ght3chzor
őstag
válasz proci985 #1523 üzenetére
A this, Memory:: és társait csak azért írtam oda, hogy jobban áttekinthetőbb legyen,
a, az egy Project& a-ból jön, amit megkap a függvényem, ha érdekel elküldöm a teljes kódomat, de már segít itt fórumról kolléga köszönöm.Egyébként stl tárolót, nem használhatok.
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
WonderCSabo
félisten
válasz proci985 #1523 üzenetére
ArrayListel egy sima add()
Ez nem Java. Vector és push_back()
más kérdés, hogy nem értem, hogy ez minek C++ alatt, amikor ott vannak a beépített funkciók.
Mindent van értelme dinamikusan kezelni, sokszor jól jöhet (bár nyilván ilyen kicsi feladatnál nem sok értelme van).
tippeltem, illetve tippelek.
Jaja, jó a gondolatmenet, csak arra akartam utalni, hogy jobb lenne bővebb kóddal kérdezni.
-
válasz h1ght3chzor #1524 üzenetére
teljes kód nem kell, pl egy tömb típusa, még az a is elég szvsz.
tipp: szeparáld a tárolóclasst a projecttől, és teszteld pl egy célra létrehozott classal külön. szerintem egyszerűbb lenne, hacsak nem valami minimálprojektről van szó, ahol nem éri meg mindent szétválasztani.
"Egyébként stl tárolót, nem használhatok"
beadandó?WonderCSabo: jogos, push_back pedig tényleg a legegyszerűbb.
Mindent van értelme dinamikusan kezelni, sokszor jól jöhet (bár nyilván ilyen kicsi feladatnál nem sok értelme van).
persze, de elnézve a kódot volt egy olyan sanda gyanúm, hogy itt valami egyéb követelmény is van a háttérben (tipikus c iskolapéldának tűnt)..Don't dream it, be it. // Lagom amount.
-
dany27
őstag
Sziasztok!
Kicsit meggyűlt a bajom a templatekkel....
Valamiért állandóan undefined refernce hibát kapok.. headerben megvan írva az osztály meg benne az össze tag fügvény definiciója, a cpp-ben az össze tagfügvény megírva és mégsem jó.Ha a headerben kifejtem a tagfügvényt akkor tökéletesen megy.
Ha nem a headert includeolom hanem a cpp-t egyből megy....(tudom hogy ilyent nem szabad, meilőtt megköveznétek )Mi lehet a gond?
Előre is köszi!
-
Jester01
veterán
A template-k már csak ilyenek. A fordítónak látnia kell a definíciót, nem csak a deklarációt (mintha ezeket te kevernéd kicsit).
Olyat lehet játszani, hogy konkrét paraméterre explicit példányosítod akkor meg fogja találni másik fordítási egységben is.Amúgy nem véletlen, hogy az új módi szerint a "headereknek" nincs .h kiterjesztése. Szegény c++ nagyon el lett barmolva, hogy az interface és az implementáció összemosódik.
Jester
-
-
WonderCSabo
félisten
válasz Chipi333 #1530 üzenetére
Sztem a legtisztább módszer az, hogy simán megírod a hpp - ben a definíciót, és a hpp végére includeolod a tpp - t amiben az implementáció van.
Jester: Ebben a nyelvben legalább van lehetőség az interfész és az implementáció szétválasztására, nem úgy mint egyeseknél.
[ Szerkesztve ]
-
ArchElf
addikt
válasz h1ght3chzor #1524 üzenetére
Amit kiókumláltam (hiányos c++ tudásommal):
Project* temp1 = new Project [getprojektmeret()];
for(int i=0;i<getprojektmeret();++i){
temp1[i]=this->tomb[i];
}
delete[] this->tomb;
this->tomb = new Project[getprojektmeret()+1];
int k=0;
for(k=0;k<getprojektmeret();++k){
this->tomb[k]=temp1[k];
}
this->tomb[k]=a;
delete[] temp1;A második sorban referencia szerint másolod át az osztályokat, így hiába másoltad át, ha a referencia a temp1-ben ugyanoda mutat, mint a tomb-ben.
Miután az 5. sorban delete-tel kitörlöd a tömböt látszólag törlődik a temp1 tömb tartalma is, hiszen a delete igazából nem (csak?) a hivatkozás tömböt törli, hanem a mögötte álló tartalmat is. A következő sorbancsinálsz egy új tömböt az elemeidnek, de azok már valójában törlődtek az előző sorban, hiába másolod át a for ciklusban, már nem lesznek valid elemek (príma érvénytelen hivatkozásokat sikerül így generálnod. A második delete meg valószínűleg azért hal meg, mert már eleve érvénytelen hivatkozások vannak a tömbben.Alapvetően az alábbi lehetőségeid vannak:
- ne töröld az elemeket delete-el (se az elején se a végén), csak nullázd ki a tömbböt, az új elemet add hozzá egyszerűen (lehet, hogy memory leak-et okoz - bár jobban belegondolva taláűn nem is)
- nem kell a sok másolgatós mizéria, csinálj neki egy új tömböt a régit meg dobd el (kb ugyanaz mint az előző, kevesebb másolással), korábban már írtam hogyan
- add át érték szerint az elemeket - kell hozzá egy Project(const Project& p) konstruktor, amivel másolni tudod az elemeket. Bonyolultabb (illetve volatilis) osztályok esetén nem igazán működik, de ha mindenképp szeretnéd használni a delete-et akkor ide jó lesz.AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
Jhonny06
veterán
Tehát ha a VS-ben létrehozok egy bármilyen C++ projektet, akkor az tuti Visual C++? Egyáltalán honnan ismerem meg, hogy standard C++-e vagy nem? Mert gyakorlatilag egy bármilyen IDE-be bemásolom a forrást és ugyanúgy lefut a VS-ben használt kód mondjuk egy Code::Blocks-ban is.
[ Szerkesztve ]
-
Chipi333
csendes tag
válasz Jhonny06 #1533 üzenetére
"Mert gyakorlatilag egy bármilyen IDE-be bemásolom a forrást és ugyanúgy lefut a VS-ben használt kód mondjuk egy Code::Blocks-ban is."
Hát az IDE az aztán pont lényegtelen Az a kérdés, hogy milyen compiler van mögötte. Ha elég türelmes vagy VS-böl is tudsz g++-al forgatni, és CodeBlocksban is vc++-al.
A fordítók meg olyanok, hogy van egy bizonyos szint ameddig kompatibilisek, aztán meg nem annyira. Pl. Hello world nem fog elhasalni egyiken sem nyilván, meg a legtöbb szabványosan megírt kód sem, de a vc tud olyan dolgokat amiket a g++ nem és fordítva is. Ha meg elkezdesz mondjuk templateket irogatni mint a kolléga pár hsz-el lejjebb, akkor aztán esélyed sincs a hordozhatóságra[ Szerkesztve ]
-
h1ght3chzor
őstag
válasz ArchElf #1532 üzenetére
int pm = getprojektmeret();
Project* temp1 = new Project [pm+1];
int i;
for(i=0;i<pm;++i){
temp1=tomb(i);
}
temp1(i) = a;
delete[] this->tomb;
this->tomb = temp1;Erre gondoltál a 2. pontodban igaz? Ez kb ugyan azt csinálja, el se tárolja a 2. elememet.
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
ArchElf
addikt
válasz h1ght3chzor #1536 üzenetére
A delete[] this->tomb; nélkül. Ugyanis ez is kitörli az eredeti elemeket.
AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz h1ght3chzor #1538 üzenetére
Nálam működik így:
int pm = getprojektmeret();
Project* temp1 = new Project [pm+1];
int i;
for(i=0;i<pm;++i){
temp1[i]=this->tomb[i];
}
temp1[i]=a;
this->tomb = temp1;
temp1 = 0;AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
h1ght3chzor
őstag
válasz h1ght3chzor #1538 üzenetére
Boccs, félreírtam, eltárolja, viszont vmit elnéztem feljebb, mert ha kitörlök egy középső elemet, akkor vmiért 0-s kezdőcímet kap. Ezt még kidebugolom, viszont a memóriaszivárgás ismét kérdéses.
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
ArchElf
addikt
válasz h1ght3chzor #1540 üzenetére
Memóriaszivárgásra csak azt tudom, hogy ha másolod az elemeket, akkor lehet törölni az eredeti tömböt...
copy operator a project-re:
void Project::operator=(Project& p){
this->kezdocim=p.kezdocim;
this->meret=p.meret;
//következő sor esetleg még kellehet
//delete[] this->nev;
this->nev=new char[sizeof(p.nev)];
strcpy(this->nev, p.nev);
}Kicsit tesztelgettem, de úgy néz ki a terület allokálással még gondok vannak.
Nem merültem nagyon bele, de simán kiosztott az első üres helyre két helyet foglaló projectnek területet (és utána azt törölve törölte az utána következőt is):
Memória: 5
A:1 hozzáadása
B:1 hozzáadása
A törlése
C:2 hozzáadása (nem a 3. memóriahelyre teszi, hanem az elsőre)
C törlése (törli a B helyét is)AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
h1ght3chzor
őstag
válasz ArchElf #1541 üzenetére
Igen, a terület kiosztással van probléma. Nagyon belebonyolódtam, mert ugye akkor is vizsgálnom kell, ha ==1 vagy (i)==0 ugye, és ennek rengeteg kombinációját látom, de lehet csak nagyon nem látom már át. Egyébként a kezdőcímet nem tudom beállítani pontosan ez miatt, a legkisebb helyet azt szerintem jól megtalálom, bár már ez sem biztos.
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
-
h1ght3chzor
őstag
válasz ArchElf #1541 üzenetére
int pm = getprojektmeret();
this->temp = new Project [pm+1];
int i;
for(i=0;i<pm;++i){
this->temp[i]=tomb[i];
}
this->temp[i] = a;
this->tomb = new Project [pm+1];
for(i=0;i<pm+1;++i)
this->tomb[i]=this->temp[i];
this->temp=0;Ehhez mit szólsz? Úgy néz ki működik, létrehoztam a Memory class-ban egy Project* temp-et, és abba másolgatom, így még nem sikerült lefagyasztanom a progit, és nincs sztem memóriaszivárgásom sem...
Viszont ezt e kezdőcím beállítást nem látom még.
Kérlek tisztelj meg azzal, hogy válaszolsz a privát üzenetre.
-
ArchElf
addikt
válasz h1ght3chzor #1545 üzenetére
Szerintem még lehet memóriaszivárgás, mert az itt generált elemeket:
this->temp = new Project [pm+1];
nem szabadítod fel, hanem egyszerűen a hivatkozáést felülcsapod ezzel:
for(i=0;i<pm;++i){ this->temp[i]=tomb[i];}
Ezen elméláztam este, de nem tudtam működő megoldást találni elemszintű cserére. Nem vagyok sajna c++ terén ennyire jártas...Ja és még egy probléma: ha referencia alapján tárolod le (nem másolod), akkor a kód mindig (fizikailag) ugyanazt a változót teszi be a memóriába:
if(menu=='1'){
system("CLS");
char projektnev[200];
int projektmeret;
cout << "Adja meg a projekt nevet: ";
cin >> projektnev;
cout << endl;
cout << "Adja meg a projekt memoriameretet: ";
cin >> projektmeret;
if(projektmeret<=0){
cout << endl;
cout <<"Hibas memoriameretet adott meg!"<< endl;;
cout << "Adja meg a projekt memoriameretet: ";
cin >> projektmeret;
}
b.psetname(projektnev);
b.setmeret(projektmeret);
a.phozzaad(b);
}Így tényleg a legjobbnak tűnik egy a másoló operátort felülírni (operator=) és nincs több gond...
AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
Chipi333
csendes tag
válasz ArchElf #1546 üzenetére
Ha kevesebb a delete mint a new, akkor ott memory leak van
this->temp = new Project [pm+1];Ez nem egy Projekt* tömböt csinál, hanem egy Project tömböt. És a this->temp[i]=tomb[i]; az másol nem pointert állítgat. Probléma akkor van, ha a Projecten belül is vannak pointerek, mert akkor defaultbol csak a pointer lesz másolva, és ugyanoda fog mutatni mint az eredeti. A deletekből amiatt lehetett baj, ha a Projeknek van destruktora, ami ezeket a területeket szépen felszabadítja, és az új példány meg megpróbálja ezeket elérni (vagy éppen deletnél megpróbálja újra felszabadítani). Szóval ha ez van, akkor valóban kell a copy operátor.
[ Szerkesztve ]
-
bradam
aktív tag
Sziasztok!
Lenne egy nagyon idióta, és valószínűleg hülye kérdésem készülvén az érettségire, remélem tudtok segíteni
Szóval van egy txt fájlom benne ip címek ilyen módon.
Ezt úgy kéne beolvasnom,hogy tudjak szűrni ip alapján(If-el),viszont csak stringbe tudom beolvasni, úgy meg nem tudom kezelni. Valahogy String-Int átalakítást lehetne végezni, úgy hogy tudjak vele bármilyen műveletet csinálni? A pontos feladat egyébként az,hogy 192.168.100.X-es IP címeknél X alapján csoportosítsak.
(Itta kódrészlet,bár nem hiszem,hogy kellene, Substr-el próbáltam megoldani, sikertelenül
Előre is köszönömDoc: Gyakorlatilag annyi a feladat,hogy az IP címnél ha x<200, akkor az egyik, egyébként a másik csoportba kell rakni.
[ Szerkesztve ]
-
doc
nagyúr
milyen az a "barmilyen" muvelet?
muveleteket (osszehasonlitas, rendezes, stb) stringekkel is tudsz csinalni
ha meg mindenkepp int-te akarod alakitani, akkor ott a jo oreg atoi
vagy ha C++ -os megoldast keresel, akkor a stringstream
persze mindkettohoz megfeleloen 'vagni' kell a stringet
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!