Hirdetés

2024. május 1., szerda

Gyorskeresés

Hozzászólások

(#1701) shev7 válasza cellpeti (#1700) üzenetére


shev7
veterán

be akarod kerni a konzolrol, vagy hardcode-olni akarod?

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1702) cellpeti válasza shev7 (#1701) üzenetére


cellpeti
veterán

micsoda?

úgy kell,hogy be kell kérni szabvány bemenetről és utánna kell letárolni! :U

Tigris, tigris, csóvafény...

(#1703) shev7 válasza cellpeti (#1702) üzenetére


shev7
veterán

de amikor bekered szavany bemenetrol akkor egybol el is tarolod. Vagy a bekeres nem megy? akkor kerdezd azt :)

char* str; // ez lehetne char str[50] is de akkor 50-nel nagyobb inputnal bajban vagy
scanf("%s", str);

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1704) Sk8erPeter válasza shev7 (#1703) üzenetére


Sk8erPeter
nagyúr

De a scanf csak szóközig olvas, nemde? :D

Sk8erPeter

(#1705) cellpeti válasza shev7 (#1703) üzenetére


cellpeti
veterán

illetve,csak printf-et és getline-t szabad használni!

De köszönöm!

Tigris, tigris, csóvafény...

(#1706) Dead_slow


Dead_slow
tag

Üdv urak nekem is kellen egy kis segítség.

Adott egy feladat amiben az adatok bekérését olyen formán kell megadni, hogy: "Lili, 7, Szabó Gergő"
A kérdés az, hogy hogy tudnám ezt úgy beolvastatni hogy a "Lili" a "7" és a "Szabó Gergő" is egy-egy külön stringben legyen eltárolva.
Köszönöm :R

[ Szerkesztve ]

(#1707) Gyuri16 válasza Dead_slow (#1706) üzenetére


Gyuri16
senior tag

scanf tud olyat, hogy a formazo stringben megmondod neki milyen karaktereket matcheljen. igy kell irni: %[a-z] ez pl azt jelenti hogy mindent a-tol z-ig. negalni lehet ^ jellel, that pl ez: %[^,] azt jelenti, hogy mindent a vesszon kivul. ezt felhasznaljuk ehhez. tehat az elso kettonel (Lili, 7) az elvalaszto a vesszo lesz, a harmadiknal pedig a \n. igy fog kinezni:

#include <stdio.h>

int main() {
char a[80], b[80], c[80];
scanf("%[^,], %[^,], %[^\n]",a, b, c);
printf("%s\n%s\n%s\n", a, b, c);
}

Nem vagyok egoista, csak uborkagyalu!

(#1708) Sk8erPeter válasza Gyuri16 (#1707) üzenetére


Sk8erPeter
nagyúr

Jé, ez király, ezt eddig nem is tudtam, nekem is hasznos lesz, danke schön. :D :R

Sk8erPeter

(#1709) Jester01 válasza Sk8erPeter (#1708) üzenetére


Jester01
veterán

Amilyen gyorsan megtanultad, ugyanolyan gyorsan felejtsd is el :K
Ugyanis semmilyen hibakezelést nem végez így nagyon kiváló túlcsordulást lehet vele csinálni. Persze tehetsz bele max hosszot, de akkor meg azzal kell külön vacakolni, hogy a pufferben maradt szemetet kiolvasd (ugye a példa szerint is benne marad egy enter ami a következő beolvasást megzavarhatja) illetve hogy értelmes hibaüzenetet adj. Szóval kb házi feladat programokhoz jó, egyébként pedig egész sorokat kell olvasni és aztán szépen értelmezni. Macerás, de ez van.

Jester

(#1710) Sk8erPeter válasza Jester01 (#1709) üzenetére


Sk8erPeter
nagyúr

Hát jó, köszi, hogy felhívtad a figyelmem még idejében. :D :R

Sk8erPeter

(#1711) Dead_slow


Dead_slow
tag

Üdv!
Újra segítséget kérek a topik "lakóitól" itt a feladat: Egy elefánt menhelyre nyilvántartó programot készítünk. A program először bekéri a menhelyen megfordult elefántok számát, majd ezután bekéri és eltárolja az elefántok nevét, a menhelyre érkezés évét, valamint a menhelyről távozás évét(lásd a példát).
Eztán a program kilistázza évenkénti bontásban az adott évben a menhelyen tartózkodott elefántok nevét. A listázás a legkorábban érkezett elefánt érkezési évétől a legkésőbb távozott elefánt távozási évéig tart.

Pl.:
Elefántok száma: 4
1. Neve: Trombi
Erkezes: 1998
Tavozas: 2001
2. Neve: Frédi
Erkezes: 1999
Tavozas: 2000
3. Neve: Olga
Erkezes: 1998
Tavozas: 1999
4. Neve: Helga
Erkezes: 2004
Tavozas: 2005

Kimenet:
1998: Trombi, Olga
1999: Trombi, Frédi, Olga
2000: Trombi, Frédi
2001: Trombi
2002:
2003:
2004: Helga
2005: Helga

Jelenleg itt tartok, persze nem biztos hogy így jó lesz:
#include<stdio.h>

struct elefant{
char nev[41];
int erkezes;
int tavozas;
};

struct elefanttar{
int db;
struct elefant *elefantok;
};

void lefoglal(struct elefanttar *pfe){
printf("kerem az elefantok szamat: ");
scanf("%d",&(*pfe).db);
(*pfe).elefantok=(struct elefant*)malloc(sizeof(struct elefant)*(*pfe).db);
}

void beker_elefant(struct elefant *pe){
printf("Neve: ");
scanf("%s",(*pe).nev);
printf("Erkezes: ");
scanf("%d",&(*pe).erkezes);
printf("Tavozas: ");
scanf("%d",&(*pe).tavozas);

}

void beker_elefanttar(struct elefanttar *pet){
int i;
for(i=0;i<(*pet).db;i++){
beker_elefant(&(*pet).elefantok[i]);
}
}

void listaz(struct elefanttar *let){
char c[41];
int sorba[200];
int max=0;
int min=10000;
int i,j,k;

for(i=0;i<(*let).db;i++){
if(max<(*let).elefantok[i].erkezes){
max=(*let).elefantok[i].erkezes;
}
}
for(j=0;j<(*let).db;j++){
if(min>(*let).elefantok[j].erkezes){
min=(*let).elefantok[j].erkezes;
}
}
}
void felszabadit(struct elefanttar *pfe){
free((*pfe).elefantok);
(*pfe).elefantok=NULL;
}

int main(){
struct elefanttar b;
lefoglal(&b);
beker_elefanttar(&b);
listaz(&b);
felszabadit(&b);
return 0;
}

[ Szerkesztve ]

(#1712) moha21 válasza shev7 (#1662) üzenetére


moha21
addikt

lehet azért kell neki, mert ki szeretne lépni a programból bár azt én sem értem miért kell mindekettő.

Nem az az igazi férfi aki minden nőt meghódít, hanem aki ismeri a nagyfeszültségű földkábelek szigetelésének technikáját.

(#1713) Gyuri16 válasza Dead_slow (#1711) üzenetére


Gyuri16
senior tag

amit irsz, igy ranezesre jo. tehat tegyuk fel, hogy a beolvasas megvan.
a listaz fv-ben megallapitod a min es max evet amit majd a kimenetbe irsz. itt egy kis bug szerintem, a max-ban a tavozast kellene nezni, nem az erkezest.

tovabb az en javaslatom:
lesz egy tombod amit az evvel indexelsz ( (ev-min)-nel konkretan, hogy uljenek az indexek). ez a tombod jegyzi meg az evben ott levo elefantok nevet. Ezt szerintem legegyszerubb lancolt listaval (mivel elore nem tudod, hogy mennyi elefant lesz az adott evben, igy elore nem tudnad a tombot lefoglalni. persze lehet lefoglalni tobbet..)
szoval a tombod minden eleme egy lancolt lista elejere fog mutatni. a lista elemei lehetnek mutatok az elefant structokra. egy ciklusban vegigmesz az osszes elefanton, es az eves tombodbe a listakba hozzaadod a megfelelo evekhez.

ha nincs kedved a lancolt listahoz, lehet csinalni tombbel is, akkor lefoglalsz akkora tomboket mint amennyi elefant osszesen van.
ha pedig csak kiiratni kell, akkor lehet akar egyenesen stringbe is gyujteni a neveket evek szerint, ez is kicsit maceras, hiszen oda kell figyelni, hogy eleg hely legyen lefoglalva
lehet mashogy is csinalni, de gondolom nincs egy elefantfarmod ahol tenyleg futna a program :)

[ Szerkesztve ]

Nem vagyok egoista, csak uborkagyalu!

(#1714) Jester01 válasza Gyuri16 (#1713) üzenetére


Jester01
veterán

Láncolt lista elefántokból: :DD

Jester

(#1715) Dead_slow válasza Gyuri16 (#1713) üzenetére


Dead_slow
tag

Köszönöm, összehoztam bár nem láncolt listával.
Nemrég kérdeztem itt, hogy lehetne beolvasni egy ilyen formátumú(pamacs, 7, Vnev Knev) stringet úgy hogy mind a három adatot külön tárolja el, akkor írtál egy scanf-es megoldást, de azt nem fogadták el, mondván, hogy a név állhat simán 3 részből is, csináljam gets-el ezt mondták. Gondoltam feldarabolom, de valamiért nem akar működni, tudom alap dolog, de mégsem jó, az elsőt még kiírja, de a másodikat illetve a harmadikat már nem. Itt a main fv-m.
int main(){
printf("adatok: ");
gets(mondat);
i=0;
do{
elso[i]=mondat[i];
i++;
}while(mondat[i]!=',');

i=i+2;
do{
masodik[i]=mondat[i];
i++;
}while(mondat[i]!=',');

i=i+2;
do{
harmadik[i]=mondat[i];
i++;
}while(mondat[i]!='\0')


printf("%s\n",elso);
printf("%s\n",masodik);
printf("%s\n",harmadik);
system("pause");
return 0;
}

[ Szerkesztve ]

(#1716) Karma válasza Dead_slow (#1715) üzenetére


Karma
félisten

Azért ez üt... "mondván, hogy a név állhat simán 3 részből is".
Semmi szépet nem tudok elmondani az oktatásunk állásáról.

Egyébként az lehet baj például, hogy a masodik és harmadik tömbökbe az i. helytől kezdesz el írni, így az első i-1 karakterben vagy szemét van.

Egyáltalán ezek mik? Hogy vannak deklarálva?

[ Szerkesztve ]

“All nothings are not equal.”

(#1717) Gyuri16 válasza Dead_slow (#1715) üzenetére


Gyuri16
senior tag

"nem fogadták el, mondván, hogy a név állhat simán 3 részből is"
az nem gond. amit en irtam az az utolso reszt elolvassa a \n-ig, tehat ilyen is jo lesz:
valami, 2, Abc Efg Hij

az viszont igaz, hogy ezt nem igy kellene megcsinalni, amint azt Jester01 is irta.
azzal amit irtal az a gond, hogy elso, masodik es harmadik stringjeidet i-vel indexeled, ami egyre nagyobb. az elso jo lesz, de a masodikban mar nem a nulladik helyrol kezded feltolteni a stringet.

Nem vagyok egoista, csak uborkagyalu!

(#1718) Dead_slow válasza Gyuri16 (#1717) üzenetére


Dead_slow
tag

Köszönöm, így már értem :D
#include<stdio.h>
char mondat[100];
char elso[100];
char masodik[100];
char harmadik[100];
int i,j,k,l;

int main(){
printf("adatok: ");
gets(mondat);
i=0;
do{
elso[i]=mondat[i];
i++;
}while(mondat[i]!=',');
elso[i+1]=='\0';

i=i+2;
j=0;
do{
masodik[j]=mondat[i];
i++;
j++;
}while(mondat[i]!=',');

i=i+2;
j=0;
do{
harmadik[j]=mondat[i];
i++;
j++;
}while(mondat[i]!='\0');




printf("%s\n",elso);
printf("%s\n",masodik);
printf("%s\n",harmadik);
system("pause");
return 0;
}

(#1719) Gyuri16 válasza Dead_slow (#1718) üzenetére


Gyuri16
senior tag

ha a tanaraid szigoruak, akkor meg van par dolog amit lehet ezen javitani:
1. gets nem egy tul jo fuggveny, mert nem ellenorzi a buffer es a bemenet hosszat. buffer overrun lehet a vege. helyette inkabb fgets ajanlott
2. a programod jol lefut, ha olyan bemenetet kap, mint amilyet var, viszont ha csak egy vesszo van a mondat-ban, akkor csunya dolgokat csinal. a while ciklusaidban jo lenne a mondat veget jelzo \0-t is figyelni (ilyenkor valami hibakoddal kilepni)
ez ervenyes az i=i+2-re is
3. a masodik es harmadik stringet nem zarod le \0-val

Nem vagyok egoista, csak uborkagyalu!

(#1720) Karma válasza Gyuri16 (#1719) üzenetére


Karma
félisten

"1. gets nem egy tul jo fuggveny, mert nem ellenorzi a buffer es a bemenet hosszat. buffer overrun lehet a vege. helyette inkabb fgets ajanlott"

A tanáraik már bizonyították, hogy fogalmuk sincs a C-ről, a tankönyvük pedig gets-t használ, gyanítom azért erőltetik azt. :O

“All nothings are not equal.”

(#1721) Dead_slow válasza Gyuri16 (#1719) üzenetére


Dead_slow
tag

Annyira nem szigorúak, csak ha, meg van adva egy feladat, akkor pontosan olyannak kell lennie a kimenetnek mint, ami a példában szerepel, valamint néha kikötnek ezt-azt, hogy azt ne használjuk. A lezáró '\0' jogos, de az én kódomban a gépen szerepel, úgy, hogy vagy töröltem innen lányos zavaromban, vagy csak egy korábbi állapotot másoltam be :)
Amúgy köszömöm, fgets-et tanulmányozom akkor picit.

[ Szerkesztve ]

(#1722) shev7 válasza Dead_slow (#1721) üzenetére


shev7
veterán

semmi :D

[ Szerkesztve ]

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1723) D.e.x.


D.e.x.
csendes tag

Sziasztok! Azt mi okozza, hogy lefordítok egy .c fájlt (vagy többet egy projecthez) Visual Studio 2008 Pro-ban, és amikor a létrehozott .exe fájlt valakinek elküldöm, akkor asszem valami Configuration error-ral nem indul. Viszont van akinél indul.
A rendszerem 64 bites, de nem x64-re fordít, ugyanis akinél ment, 32 bites redszer van. És neki is akadt hasonló problémája, hogy az exe fájl nem volt hordozható (nálam viszont ment az övé).
VS beállítási gond lehet?
Ha kevés az információ, akkor igyekszem minél hamarabb pótolni.
Köszi a segítséget!
D

(#1724) Scroll Lock


Scroll Lock
tag

Sziasztok!
Olvastam a netet ugyan de nem igazán akkor leesni, hogy az <errno.h> hogyan kell pontosan használni, meg eléggé sürget az idő Tehát deklarálok egy ilyen nevű változót és hiba esetén hol fog megjelenni a hibakód? Az object file-ban?
Másik kérdésem, hogy az EDOM, ERANGE makrók is hasonlóan működnek? Ha valaki egy rövid leírást adna a témával kapcsolatban azt megköszönném.

[ Szerkesztve ]

(#1725) D.e.x. válasza Scroll Lock (#1724) üzenetére


D.e.x.
csendes tag

Ha jól tudom, az errno-t a matematika függvények használják (másról nem tudok). A matek könyvtárnak van három fontos makrója: EDOM (értelmezési tartomány hiba), ERANGE (értékhatár átlépés, pl ha a tangens argumentuma nagyon közel van Pi/2, -Pi/2-höz, ahol ugye nincs értelmezve), HUGE_VAL (túlcsordulás). Ha valamelyik előfordul egy fv. hívásánál, akkor a fv. az errno értékét a megfelelőre állítja. Így pl. a biztonság kedvéért le tudod ellenőrizni, hogy nem volt-e valami hiba, ami rossz irányba befolyásolná a futást.
Úgy tudom, hogy a könyvtárak deklarálják (extern int asszem), szóval ezzel nem kell bajolni.

(#1726) Gyuri16 válasza Scroll Lock (#1724) üzenetére


Gyuri16
senior tag

nem kell deklaralnod. hasznalni ugy kell hogy eloszor nullazod (ez foleg akkor kell, ha a fuggvenyed amit majd hivsz ha -1et ad vissza, nem feltetlenul hibat jelent). azutan meghivod a fuggvenyed, ha -1-el ter vissza akkor az errno-ban lesz a hiba oka. ezt nem rossz rogton feldolgozni, mert sok fuggveny modosithatja, igy aztan megvaltozhat az erteke

man errno

van egy par specialis eset, ezeket nem rossz megnezni a manualban. ugyanitt megtalalod a hibakodokat is

Nem vagyok egoista, csak uborkagyalu!

(#1727) sghc_toma válasza D.e.x. (#1723) üzenetére


sghc_toma
senior tag

az okozza, hogy nincsenek fent az adott gepen a te forditodnak megfelelo runtime library-k.. ket lehetoseged van:
- feltelepititek a runtime-ot (vcredist.exe neven valahol ott van a Visual Studio konyvtaraban, vagy MS-tol is le lehet tolteni)
- statikusan linkeled a runtime-ot az exe-dhez (Project Properties | C/C++ | Code Generation | Runtime Library, es itt /MD helyett /MT)

in asm we trust

(#1728) Vasinger!


Vasinger!
nagyúr

Kéne egy kis segítség. Sajna lemaradtam egy óráról, ahol elég sok minden fontos anyagot vettünk. Adott is házit a tanár, de azt nem tudom megcsinálni. Ha valaki leírná mit kéne beírnom, megköszönném.

C# -ban Console Application-ben kéne.

A feladat:
Beolvasni egy kitalált nevet, a szöveget és elé tenni, hogy Dr.
Beolvasunk egy stringet és ezeket megtisztítjuk a szóközöktől és kiíratni, hogy hány van.(gondolom karakter)
Beolvasunk egy nevet és csak a keresztnevet írja ki.

Így írták le az osztálytársaim is. A sztringkezelő eljárásokat, függvényeket vettük.

Köszönöm előre is a segítséget! :R

[ Szerkesztve ]

(#1729) ArchElf válasza Vasinger! (#1728) üzenetére


ArchElf
addikt

Inkább ide.

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]

(#1730) Vasinger! válasza ArchElf (#1729) üzenetére


Vasinger!
nagyúr

Köszi az útbaigazítást, elnéztem.

(#1731) D.e.x. válasza sghc_toma (#1727) üzenetére


D.e.x.
csendes tag

Köszi, így már indul gond nélkül. :R

(#1732) Scroll Lock válasza Gyuri16 (#1726) üzenetére


Scroll Lock
tag

Tehát, ha jól értelmezem az errno, hiba esetén felvesz egy adott értéket, aminek alapján belehet azonosítani a hibát. Ezt az adott értéket a hiba helye határozza meg? és létezik valamilyen lista a kódszám azonosítására

(#1733) Gyuri16 válasza Scroll Lock (#1732) üzenetére


Gyuri16
senior tag

altalaban ugy mukodik, hogy meghivod a fuggvenyt, ha hibat csinal akkor beallitja az errno-t olyan ertekre amibol a programozo valamit megtudhat, es visszater -1-el. az errno egy szam lesz, ezek minden ilyen fuggvenynel le vannak irva a manualban. a linken amit legutobb adtam fel vannak sorolva omlesztve a hibakodok. a kod nem a hiba helyet adja meg, hanem a "fajtajat". tehat pl malloc. kaphatsz ENOMEM hibakodot, ez az jelenti, hogy nincs mar hely, es ne is nagyon bizz benne, hogy lesz, mig EAGAIN azt jelenti, hogy most nem sikerult lefoglalni a helyet, de majd probald meg kesobb.

Nem vagyok egoista, csak uborkagyalu!

(#1734) Devdi


Devdi
aktív tag

Sziasztok.

Mostanában újra el kezdtem programozni... :)) Nemsoká jön az új félév aztán nem árt feleleveníti a régi dolgokat. Code Blocks-ban programozok és az a baj vele, hogy valamiért mikor azt akarom, hogy az eof-ig kérjen be számokat és írassa ki pl azt, hogy mennyi karaktert írattam be akkor utána mikor nyomok neki egy ctrl+c-t akkor kilép a programból éppen, hogy csak látom, hogy mennyi volt az érték. Azt hiszem, hogy régebben úgy volt, hogy ezt az értéket mindig láttam szóval nem lépett ki azonnal a programból. Ezt hol lehet beállítani a codeblocks-ban vagy inkább valami pause szerűséget használjak? :F Ha igen akkor azt hogy? :)

(#1735) Karma válasza Devdi (#1734) üzenetére


Karma
félisten

Az EOF az nem Control+C, hanem Control+Z :U
Nyomkodd azt, és valószínűleg jobb lesz.

UNIX-szerű rendszereken meg Ctrl+D van.

[ Szerkesztve ]

“All nothings are not equal.”

(#1736) Devdi válasza Karma (#1735) üzenetére


Devdi
aktív tag

Hehe :D Akkor csak jól derengett, hogy valami nem dereng jól :D Köszi szépen igen így már jó lesz :))

(#1737) D.e.x.


D.e.x.
csendes tag

Sziasztok!
A prog. előadás oldaláról leszedtem a Turbo C-t, és tartalmaz pár hasznos könyvtárat (első sorban ezért szedtem le).
Viszont a kezelő felület nem valami felhasználóbarát, illetve a fordított fájlok csak DOS-Box alatt futnak...
Van rá mód, hogy a graphics.lib, graphics.h, valamint a hozzájuk tartozó BGI fájlokat beépítsem egy Visual Studio projektbe? (Ha sehogy sem lehet megoldani, akkor az is elég lenne, ha a TC úgy fordítaná, hogy ne csak DOS-ban menjen. Vagy a grap. könyvtár kizárólag dos-ra van?)

Köszi a segítséget!
D

(#1738) Karma válasza D.e.x. (#1737) üzenetére


Karma
félisten

Az egész Turbo C úgy ahogy van csak DOS-ra van.

A grafikus könyvtára meg végképp, nem szabványos, hanem Borland-specifikus, amivel nem tudsz mit csinálni.

[ Szerkesztve ]

“All nothings are not equal.”

(#1739) Korcsii


Korcsii
őstag

Sziasztok!

Nos én is csatlakoznék a C klubhoz :)

Így az érettségire való jelentkezési határidő előtt nemsokkal úgy döntöttem, hogy pascal helyett C-ben fogok programozni (már ha emeltre megyek, mert még ez se biztos). Előzmények: érettségin turbo pascalt nem lehet már használni, csak free pascalt, amivel viszont még nem sikerült barátságot kötnöm - egyrészt nem tudom működésre bírni itthon, másrészt a suliban csak a tanári gépen írja ki a hibákat, a többi gépen csak a hibák számát, és rejtély hogy mért... éppen ezért a két héttel ezelőtti kis próbaérettségi szerűségen nem is tudtam megcsinálni a programozási feladatot (nem röhög: a program neve ugyan az volt, mint az egyik változó neve... hibaüzenettel én is kiszúrtam volna)... mivel félek, hogy a vizsgahelyszínen (emelt szint miatt más iskolában írjuk) sem lesz minden rendben vele, így jobbnak láttam, hogy nyár helyett már most nekiállok a C-nek. Nem, nem őrültem meg, tudom, hogy ez nem megy egyik napról a másikra, de úgy gondoltam, hogy kb egy év Pascal, és több mint 4 év PHP után össze tudom rakni a két nyelvet (előbbiből a programozási tételek, szemlélet, utóbbiból a kinézet, felépítés jött jól).

Az érettségi szoftverlistában Borland, Turbo, és Dev-C++ van felsorolva.

Ezek közül a legutolsót telepítettem fel két hete, és eddig meg is vagyok vele elégedve ("tanulás" közben írtam vele 10 apró programot, ami a fő funkciók/parancsok próbálgatása volt, azután egy program tele prog. tételekkel, majd egy hosszabb program, majd két korábbi érettségi). Szóval úgy néz ki, hogy ok lesz a dolog, de azért megkérdezem:

Ti melyik programot ajánljátok a fenti 3 közül? Avagy kérdezhetném úgy is, hogy van valami ellenjavallat a Dev-C++ ellen? Van valami, amiben a többi program jobb (választás lenne)?

Előre is kösz :R

(#1740) Karma válasza Korcsii (#1739) üzenetére


Karma
félisten

A Borland és a Turbo is két antik retek, amit csak azért nyomnak az iskolákban, mert a tanárok lusták művelni magukat. Ahogy az előbb is említettem, csak DOS-ban működő móka mind a kettő.

A Dev-C++ teljesen korrekt választás, bár én annyira nem szeretem azt az IDE-t. Anno Code::Blocks-ot használtam első félévben, azóta meg XCode-ot.

“All nothings are not equal.”

(#1741) Korcsii válasza Karma (#1740) üzenetére


Korcsii
őstag

Jah, közben láttam, hogy pont előttem írtad :B csak amikor elkezdtem írni, még nem volt ott...

Kösz, akkor marad a Dev-C++ egyelőre :K

(#1742) D.e.x. válasza Karma (#1738) üzenetére


D.e.x.
csendes tag

Ejj, ettől tartottam... Feltételezem, a VS nem tartalmaz alapból grafika használatára alkalmas fv-eket... (asszem a conio.h-t sem... :( )
Tudsz ajánlani esetleg valamit a grafikához, vagy térjek át C++-ra (arra találtam .cpp fájlokat, amelyek segíthetnek...)?

(#1743) Karma válasza D.e.x. (#1742) üzenetére


Karma
félisten

Ha használhatót és egyszerűt akarsz tanulni, akkor nézegesd az SDL-t. Milliárd platformon fut, tényleg egyszerű, és vannak hozzá sablonok is akár.

Ha C++-ra váltasz, akkor meg Qt.
De az más nyelv, mint a hagyományos C++, viszont vannak jó könyvek róla.

[ Szerkesztve ]

“All nothings are not equal.”

(#1744) D.e.x. válasza Karma (#1743) üzenetére


D.e.x.
csendes tag

Köszi a segítséget. Jövőhéten vetek egy nagyobb pillantást az SDL-re.
D

(#1745) doc válasza Karma (#1743) üzenetére


doc
nagyúr

csatlakozom a kollega urhoz
bar az nem derult ki, hogy konkretan milyen grafikara gondoltal. ha "ablakos" programokat akarsz irni, akkor sima C-hez meg a GTK passzol (amit mondjuk szivbol ruhellek, de mas normalis valasztas nem nagyon van)

a Qt meg hatalmas tutisag :C :R
lassan meg a kenyerpiritora is portoljak, csillio nyelvbol hasznalhato (akar Java, Python, Perl, Ruby, Haskell, anyamkinja 1.0)

(#1746) Gyuri16 válasza doc (#1745) üzenetére


Gyuri16
senior tag

milyen IDE-t ajanlasz/hasznalsz Qt-hoz? (olyan wysiwyg csodara gondolok)
egyelore c-t vimben irok, ami szuper, viszont grafikus cuccot nem igazan tudom elkepzelni vele
(btw ha van itt vim guru, szivesen elbeszelgetnek vele :) foleg debuggolas erdekel vim alol, illetve olyan -nem tudom a nevet- cucc ami odaugrik egy fuggveny kodjara, illetve vissza, ha egy fuggvenyhivasrol megnyomok egy gombot)

Nem vagyok egoista, csak uborkagyalu!

(#1747) doc válasza Gyuri16 (#1746) üzenetére


doc
nagyúr

hehe :C
1) milyen ajanlok Qt-hoz? Qt creatort, adja magat, az integralt Designer miatt nem is kell "kivulre" menni
2) milyet hasznalok? semmilyet :) vim-ben kodolok regota (Qt-t is), imadom, egyelore nem talaltam meg olyan szerkesztot ami a nyomaba erhet, pedig probaltam parat (IDE-kbol pl. Dev-C++, Code::Blocks, KDevelop, Qt Creator stb). a Creatorban van ugyan "fake vim", de csak a legeslegalapvetobb vim-es feature-oket tudja, semmi olyan nincs benne implementalva amitol a vim igazan hasznalhato es zsenialis :(
3) vim guru nem vagyok, de hasznalom es szeretem regota :)
debugolni nem szoktam vim alol, bar ha jol tudom siman megoldhato, en altalaban vagy trace-elek, vagy ha muszaj szo szerint debugolni, akkor gdb
a kodban ugralassal meg szerintem a ctags-re gondolsz, ehhez nem kell semmi kulonleges, csak legeneralni a tags file-t (a forrasaid legfelso konyvtaraban ctags -R *), aztan a vim-nek elmagyarazni hogy ha az aktualis konyvtarban nem talal tags file-t, akkor menjen feljebb: set tags=tags;
(a vegere a ; kell!)

SZERK: 'ugrani' ugy tudsz, hogy az osztaly(vagy barm imas)nevre allva CTRL+] -t nyomsz, visszalepni meg CTRL-t

[ Szerkesztve ]

(#1748) Gyuri16 válasza doc (#1747) üzenetére


Gyuri16
senior tag

orulok, hogy mas is hasznal vimet :)
igen ctags-ra gondolok, kicsit jatszottam vele (foleg azert, mert autocompletionhoz is kell), mas tapasztalata alapjan konnyebb beallitani ezeket a dolgokat. sajnos a dokumentacio egyes pluginokhoz eleg keves.
debuggolasra probaltam yavdb-t, de nem sikerult beizzitani (leiras alapjan nem tudtam megcsinalni)
gdb nekem mar tul fapados

ugralos dolgot mindjart kiprobalom

Nem vagyok egoista, csak uborkagyalu!

(#1749) Dealer


Dealer
tag

Hali! Tudnátok linkelni nekem valami értelmes tutorialt hogy hogyan lehet profin debuggolni c+ progit Visual Studio 2008 vagy 2006-ban? Eddig a sima Borland TC-hez voltam hozzászokva ott teljesen egyértelmü volt hogy mit is csinálok de ezen a VS-en nemtudok kiigazodni :( ...
köszi!

(#1750) Tussky


Tussky
tag

Sziasztok!

A feladat az lenne,hogy egy filet soronként beolvassak és a megfelelő sorokból kinyerjem az adatokat.Addig eljutottam,hogy csak a megfelelő sorokat kinyerem,itt kéne az adott helyen lévő adatokat kimásolnom egy másik fájlba,azonban egy olyan problémval találkozok,amivel nem nagyon tudok mit kezdeni.

Konkrétan a program:

#include <fstream>
#include <string>
#include <iostream>
#include <vector>

using namespace std;

int main(){
string line, filename = "valami.txt";
ifstream file;
file.open(filename.c_str());

while (file.is_open() && file.eof()==false){
getline(file,line);
if( (line.compare(0,4,"HAMB")==0) && (line.compare(12,14,"TO")==0) ){
cout << line << endl;
}
}
file.close();

return 0;
}

Valakinek van ötlete,hogy az if miért nem jó ? Fordításnál nincs gond,de amint futtatom terminated.Igazából,ha az if-es sor jó lenne,akkor tovább tudnék lépni,de nem jövök rá,hogy miért nem megy.A probléma az,hogyha két külön if-re bontom se boldogul a sorral.

Előre is kösz a válaszokat!

[ Szerkesztve ]

Copyright © 2000-2024 PROHARDVER Informatikai Kft.