Hirdetés
- Kompatibilis lett az Android Quick Share és az Apple AirDrop
- Akciófigyelő: Black Friday kedvezmények az EarFun cuccaira
- Akciófigyelő: Huawei Black Friday akciók a tudatos életvitel jegyében
- Részletes fotókon a Honor robotkaros telefonja
- Ezekkel a kiegészítőkkel még sokoldalúbb eszközzé válik az Armor Pad 5
- Hivatalos a OnePlus 13 startdátuma
- Megtartotta Európában a 7500 mAh-t az Oppo
- iPhone topik
- Amazfit Bip 6 - jót olcsón
- Honor Magic V5 - méret a kamera mögött
- Bemutatkozott a Poco X7 és X7 Pro
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Az AI miatt drágulnak a mobilok is
- Részletes fotókon a Honor robotkaros telefonja
- Milyen hagyományos (nem okos-) telefont vegyek?
-
Mobilarena

Új hozzászólás Aktív témák
-
bdav
őstag
hát éppen van lehetőség egy nyitott filestreamban hogy mozgasd az aktuális írási pozíciót (seegk és seekp) de nem ismerem ezt a lehetőséget jól, most találtam a googleval. nahh ha ez megvan és ismered a fájl sorainak hosszát, akkor sztem el tudsz navigálni a sorzáró \n (vagy \n\r) elé és oda beírhatsz, így kvázi új oszlopod lesz. (nézz utána ennek még, próbálgasd előtte)
de nekem szimpatikusabb lenne tömbben gyűjteni a kiírandó adatokat és csak a szim. végén létrehozni a fájlt
mod most látom h. jo lenne tömbbel is csak az implementácio hiányzik. nahh akkor:
Legyen egy tömböd:
[code] tomb[sorok][oszlopok] [/code]
ezt fel tudod tölteni két ciklussal:
[code]
for(oszlopok=0; oszlopok<maxoszlopok; oszlopok++) //ez léptet a köv. oszlopra
for(sorok=0; sorok<maxsorok; sorok++) // ez egy oszlop adatait szedi össze
tomb[sorok][oszlopok]= //ide elvégzed a müveletet
[/code]
kiíráskor az kell hogy egy sor kiírásakor minden oszlop első eleme szerepeljen
[code]
for(sorok=0; sorok<maxsorok; sorok++)
{
for(oszlopok=0; oszlopok<maxoszlopok; oszlopok++)
file<<tomb[sorok][oszlopok]<<'\t'; //kiirkálod az oszlopok első elemeit
file<<'\n'; //majd sor vége, köv. körben jönnek a 2. elemek.
}
[/code]
a lényeg h. a két tömbbejárásnál más legyen a tömbindexeken végigfutó ciklusok sorendje.
[Szerkesztve] -
Forest_roby
őstag
nem -ez így mégse jó -én nem erre gondoltam.
Azt kell csinálni, hogy egy oszlopba kiiratni az egésszet és a ciklusok között vmi elválasztót kiiratni - így tudod szeparálni a különböző tömböket. Ha ez kész egy másik progival megcsinálni a végső text filet. sztem máshogy nem nagyon megy - persze lehet memóriából is csinálni ez egészet.
1
2
3
4
5
6
-
7
8
9
10
11
12
-
...
és ebből:
1___7___x___y
2___8___z
3___9
.
.
.
.
.
mod: NEM! tömbökbe kellene menteni az oszlopok tartalmát, abbol meg pofon egyszerű lenne a mátrixot megcsinálni! A kérdés persze az hogy hány tömb kellene ehhez?
[Szerkesztve] -
Drótszamár
őstag
Oszloponként lemented, és a végén összegyúrod? Vagy az nem járható út ?
Esetleg egy jó nagy tömmbe eltárolni az egészet, és a végén kiírni fájlba?
Az a baj, hogy a textfile-ba amiket látsz oszlopokat, azok nem oszlopok, hanem érték,sortörés,érték,sortörés.... (tehát egy sima szekvencia. Az hogy a képernyőn hogy látod az most mellékes)
Neked ide kéne minden érték után beszúrni a következőt (esetleg valami elválasztó a kettő közé). Ez eléggé macerás. Mindeképpen valami memóriában összefésülős algoritmusban érdemes gondolkodni. Akár úgy, hogy egész fájl beolvas, a memóriában összefuttatod a 2 adatsort, majd újra kiírod. -
Jester01
veterán
1. using namespace
C++ban lehetőség van névterek használatára, hogy a névütközést el lehessen kerülni. (namespace akarmi { ... } )
Az alap könyvtár az ''std'' névteret használja. Using nélkül pl. ki kellene írni mindenhol, hogy std::cout. A using használatával az adott névtér elemeire közvetlenül lehet hivatkozni. Bizonyos (tipikusan régebbi) fordítók nem támogatják a névtereket vagy pedig az std névteret automatikusan úgy kezelik mintha lenne rá using.
2. a main paraméterei
A main függvény helyes prototítpusa az int main(int argc, char *argv[]), ahol argc a parancsori argumentumok száma és argv az argumentumok tömbje. A 0. indexű elem tipikusan a program neve. A függvény visszatérési értéke pedig egy int ami egy tetszőleges kód, tipikusan 0 a sikeres lefutás jelzésére.
A void main() forma véletlenül működik, mivel a C hívási konvenció ezt lehetővé teszi. Ilyenkor a parancssor nem érdekes és a visszatérési érték pedig valami véletlen szám lesz. Használata nem javasolt, visszatérési értéket mindig célszerű megadni, ha pedig nem akarod használni a parancssort, akkor egy int main(int, char**) sorral ez korrekten megtehető.
3. cstdlib
Igen, ebben a C stdlib függvényei érhetők el, többek között a system is. (Ez a példa szerintem nem volt szerencsés a kollega úr részéről, bár tény, hogy nem egyszerű billentyű lenyomásra várni C++ban.)
4. EXIT_SUCCESS
Ez egy előredefinált konstans a sikeres lefutás jelzésére (0). Lásd 2. pont.
MOD: hú de nagyon lassú voltam
[Szerkesztve] -
cucka
addikt
using namespace std;
azt jelenti, hogy a standard névteret használod. itt jól le van írva: [link] (egyszerű példák, utolsó paragrafus szól az std-ről)
int main(int argc, char *argv[])
a main paraméterei a program argumentumait jelentik, vagyis ezekből olvasható ki, hogy pl. milyen paraméterekkel indítottad el parancssorból a programodat. argc a paraméterek számát jelöli (arg. count) másik meg egy argc elemszámú tömb amiben maguk az argumentumok vannak (arg. value).
#include <cstdlib>
gondolom ez tartalmazza a system(''pause'') parancsot pl, ami a press any key-t okozza bezárás előtt?
igen. a system paranccsal külső parancsokat/programokat tudsz futtatni. a pause (beépített) parancs dos/win alatt, próbáld ki parancssorban. [link]
return EXIT_SUCCESS;
ez azt jelenti, hogy a main függvény EXIT_SUCCESS értéket ad vissza kilépéskor. ez az érték a 0. [link]
[Szerkesztve] -
Jester01
veterán
Itt valami telepítési probléma lett ...
Egyébként mint már említettem Cucka progija helyes, a te verziód az sajnos nem:
t.cpp:3: error: '::main' must return 'int'
t.cpp: In function 'int main()':
t.cpp:5: error: 'cout' was not declared in this scope
A könyvet nem kell kidobni, csak a using-ot kell mindig beírni, illetve a main függvényből int-et kell visszaadni. -
Lortech
addikt
-
Jester01
veterán
Csak a szokásos probléma: a fórummotor cseréli az idézőjelet két aposztrófra.
Vagyis Cucka példája jó, csak idézőjel kell. (gondolom copy&paste volt).
Ez linux alatt is ugyanez lenne (főleg mivel a devcpp gcc alapú ha jól tudom.)
MOD: Ha nem vagy linuxos, akkor miért Tux az avatarod? Mert aranyos?
Engem nem zavar, nyugodtan hagyhatod, csak mást sugall...
[Szerkesztve] -
cucka
addikt
devcpp így kéne tudja futtatni, legalábbis nálam.
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
cout<<''Hello World!'';
}
iostream.h elvileg deprecated, ezért nem ajánlja használni
cout-ot pedig akkor találja meg, ha megmondod neki, hogy a standard namespace-ben van, vagy std::cout formában használod. (hű ez a mondat elég pongyolán volt megfogalmazva)
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- TCL LCD és LED TV-k
- Kezdő fotósok digitális fényképei
- Hivatalos a OnePlus 13 startdátuma
- World of Tanks - MMO
- Megtartotta Európában a 7500 mAh-t az Oppo
- iPhone topik
- Milyen TV-t vegyek?
- Azonnali informatikai kérdések órája
- One otthoni szolgáltatások (TV, internet, telefon)
- Revolut
- További aktív témák...
- Bomba ár! Dell Latitude 3410 - i3-10110U I 8GB I 256SSD I HDMI I 13,3" FHD Touch I Cam I W11 I Gari
- Bomba ár! Dell Latitude E5550 - i5-5GEN I 8GB I 128SSD I 15,6" FHD Touch I HDMI I W10 I Cam I Gari!
- Bomba ár! Dell Latitude E5540 - i5-4GEN I 4GB I 240SSD I Nvidia I 15,6" FHD I Cam I W10 I Garancia!
- Olcsón Google Nest Mini 2nd Gen
- Bomba ár! Dell Latitude E5530 - i5-3GEN I 4GB I 320GB I HDMI I 15,6" HD I W10 I Gari!
- 15,6" Dell Latitude laptopok: E5550, E5570, 5590, 5500, 5501, 5510, 5520 / SZÁMLA + GARANCIA
- Telefon felvásárlás!! Samsung Galaxy A14/Samsung Galaxy A34/Samsung Galaxy A54
- GYÖNYÖRŰ iPhone 13 mini 128GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3884, 100% Akkumulátor
- Azonnali készpénzes GAMER / üzleti notebook felvásárlás személyesen / csomagküldéssel korrekt áron
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

tab az '\t' karakter (mint a '\n' ugy müködik) de egyébként sztem tökmindegy hogy mit raksz bele

Engem nem zavar, nyugodtan hagyhatod, csak mást sugall...

