Hogyan oldaható meg szépen hogyha nem int ek közül akarok switchelni? Hanem? Ha int,short,char,long,enum típusod van, akkor switch-elhetsz, egyébként "if".
64 bites számokra lenne szükségem.(ahhoz hogy a sakktábla mely mezején áll az adott bábu) de egyenlőre csak 32 bites számról tudok, A "long long" 64 bites, de speciel a sakktáblához elég 6 bit. Ellenőrizd: 2^6=64.
scanf után hogyan kérdezhetem le szépen hogy valóban a megfelelő tipusut (amit én kértem) pötyögték be? Utána már nemigen... legfeljebb a visszaadott értékét lehet ellenőrizni: annyi, ahány értéket beolvasott... igényesebb működéshez a következők ajánlottak: fgets, strtok, strtol (és társai)
A legfontosabb változókat amiket használok hova szokás tenni? ( egy header fájlba vagy a main be vagy mindegy?) Nincs külön szabály a változók fontossága szerint... legjobb minden változót abban a legszűkebb körben definiálni, ahol szükség van rá - ha csak egy függvényen belül kell, akkor ott, ha csak egy source-nak kell, akkor abban a source-ban static-ként, ha több source is használja, akkor egy modulban definiáljuk (int fontoska;) a többiben deklaráljuk (extern int fontoska) - a deklarációt praktikusan egy header-fileba tesszük.
/* valami.h */ extern int fontoska;
/* valami.c */ #include "fontoska.h" int fontoska = 38;
Hát hazudnék ha azt mondanám, hogy értem no mindegy egyenlőre még nincs rá szükségem. Vannak viszont fontosabb kérdéseim: 1: hogyan oldaható meg szépen hogyha nem int ek közül akarok switchelni? 2: 64 bites számokra lenne szükségem.(ahhoz hogy a sakktábla mely mezején áll az adott bábu) de egyenlőre csak 32 bites számról tudok,szóval füzzek össze kettőt. (azaz minden bábuhoz csinálhatok egy kételemű long int tömböt) van egyszerübb? 3:scanf után hogyan kérdezhetem le szépen hogy valóban a megfelelő tipusut (amit én kértem) pötyögték be? 4:A legfontosabb változókat amiket használok hova szokás tenni? ( egy header fájlba vagy a main be vagy mindegy?) Egyenlőre nem akarom több kérdéssel fárasztani a népet ugyhogy egyenlőre bőven elég lenne ha erre is választ kapnék.
Tudnátok mutatni olyan egyszerű példát a make re ahol van 2-3 .c kiterjesztésű (lehetőleg egyszerű) file 1-2 .h kiterjesztésű ill egy make file. (persze nem várom hogy irjatok olyat tökéletes ha a netről letudom tölteni)
Aki nem rendszergazda, az beteheti az aktuális könyvtárat a PATH-ba, valahogy így:
PATH=/bin:/usr/bin:/usr/local/bin:
a végén lévő üresség jelenti az aktuális könyvtárat
Igen, dj helyesen írta, de nem magyarázta meg. A linuxban a parancsot a shell a PATH környezeti változóban megadott elérési utakban keresi. Szemben a DOS-szal, Windows-zal, az aktuális könyvtárban nem keresi, és mivel az nem volt a path-ban, nem is találta meg. Ezért meg kell adni az elérési utat is. Te ezt úgy tetted, hogy feljebb mentél, majd onnan CProg/a.out-tal indítottad. Mivel az aktuális könyvtár jele a . - akár a Windows-ban -, elindíthattad volna úgy is a progidat, hogy nem mész feljebb (ahogy dj is írta):
Hogyan próbáltad indítani? Csak a beírtad a program nevét, vagy eléírtad az éppen aktuális könyvtárra való hivatkozást is? (program_neve vagy ./program_neve formában próbáltad indítani)
Nem tudom, hogy ezt itt vagy valami QT-s topikban kellene feltenni, először ide próbálom. Volna feltöltött postgres adatbázis amire QT-s guit kellene csinálni. Az a bajom egyelőre, hogy ha felteszem a táblát grafikus felületre akkor a magyar ékezetes szavak így jelennek meg: "Termék azonosító" ilyenre "Term??k azonos??t??" változik.
Hol tudom megadni a kódolást QT-ban? Vagy nem lehet összehozni a kettőt? A PG most iso8859-2-t használ a QT alkalmazás pedig UTF8-at.
Köszi, megvan a tettes (természetesen jómagam). Az -o mögül hiányzott az object file neve, és nyilván ez megkeverte a paraméterkezelést. Kezdők okulására talán alkalmas. De hát még belohin vagyok...
Sziasztok!
Nem találtam közelebbi topicot...
Nagy nehezen felkönyörögtem forrásból a gtkmm-2.4.3-at SUSE 9.0 alá. A legegyszerűbb példával szerettem volna kipróbálni a tutorial-ból: simple.cc. A javasolt utasítás: g++ simple.cc -o `package-config gtkmm-2.4 --libs --cflags`.
Nem találja a header file-t, pedig ha beírom külön a backtick-ben levőt, a package-config kimenete rendben levőnek látszik.
A f* man-ban olyasmit láttam, hogy a -I paraméter figyelmen kívül marad, ha rendszer-include könyvtár. De hol, hogyan tudatom a rendszerrel, hogy a /usr/local/include/gtkmm-2.4 -ben is keressen?
Szóval van egy Novell SuSE Linux 9.1-em, és szeretnék .c fájlokat lefordítani. Letöltöttem kb. 6 fordítót, de mindegyiknek csak a .c forrásfájla volt meg, így az ördögi kör bezárult. Van többek között GNU Compiler Collectionom, de nem tudom bekonfigurálni, és nekem egy darab, parancssoros .c fordító bőven elég.
Üdvözlök mindenkit! Kezdő programozó vagyok, és kezdő Linuxos. A programozás-tudásom fejlesztésére elkezdtem mindenféle algokat írni, de hamar elakadtam.
A feladat: megkeresni az összes olyan számhármast (és kiírni a számukat), ahol a+b+c<101, és a,b,c közül valamelyik kettőnek (legalább) a különbsége osztható 3-al. (a,b,c>=0, int)
A megoldást úgy gondoltam, hogy végigmegyek az összegeken 1-től 100-ig, majd 1-től az összegig meghatározom a-t, ezután, ha a maradék (összeg-a) osztható 2-vel, akkor megnézem azokat a számokat, melyek ülönbsége 6*x (x>=0), ha nem osztható 2-vel, akkor megnézem azokat a számokat, melyek ülönbsége 3+6*x (x>=0).
Mellékelem a kódot: # include <stdio.h> main () { int i1,i2,i3; int a,b,c; int osszes=0; for (i1=1;i1<101;i1++) { for (i2=1;i2<i1+1;i2++) { a=i2; if (((i1-a) % 2) == 0) { for (i3=0;i3<(i1-a);i3+=6) { b=(i1-a-i3) / 2; c=i1-a-b; osszes++; }//for }//if else { for (i3=3;i3<(i1-a);i3+=6) { b=(i1-a-i3) / 2; c=i1-a-b; osszes++; }//for }//else }//for }//for printf ("nÖsszesen %d ilyen számhármas vann", osszes); }//main
De ez valamiért nagyobb számot ad, mint ahány számhármas van. Plz segítsen valaki, és bocs, hogy hosszú és lama voltam.
Aha ertem. Csak a Muzegyetemi jegyzetboltban aszondtak, hogy mar regota nincsen, es a Muszaki kiado nyomja ki.
Az ara egy kicsit borsos. (3500, de tudom, hogy most mar minden konyv ilyen draga;)
CSak gondoltam, ha neked esetleg mar nem kene.
Tenyleg antikvariumot nem tudtok, ahol kapni lehet?
Kosz.
((ha valaki el akarna adni es Bp-i akkor megegyezhetunk..;)
Annyira nem surgos, de _KELL_ ;)
(Hobbiprogramolni akarok es kell.)
Ja meg egy uccso kerdes:
Ki milyen magyar konyvet ismer/tud ajanlani ami C programozassal foglalkozik?
(tehat nem C++)
A "Programozzunk C nyelven" mar itt ki lett targyalva. Szal nem hordozhato kodjaival max az elmeleti szinten ad egy kezdo szintet.
(amugy is mar leprogramoztam amit le lehetet abbol a konyvbol linux alatt)