Keresés

Részletes keresés

NevemTeve Creative Commons License 2001.10.18 0 0 34
predefined, lasd itt: /usr/lib/gcc-lib/i386-linux/<version>/specs
Előzmény: micu (31)
KoporShow Creative Commons License 2001.10.18 0 0 33
Ha minden igaz windows alatt (kivev djgpp-bol) mas eredmenyt kell hogy adjon. En nem tudtam kiprobalni, mert nincs Windowsos C-forditom.
Előzmény: Egoist (32)
Egoist Creative Commons License 2001.10.18 0 0 32
Kiprobaltam (tudom, ez csalas) es Win alatti gcc is leforditja, ill. le is fut.
Előzmény: KoporShow (27)
micu Creative Commons License 2001.10.18 0 0 31
Nem. Azt nem tudom mi a fene az az unix szimbólum de a gcc ismeri. Csak nem tudom honnan.
Előzmény: NevemTeve (30)
NevemTeve Creative Commons License 2001.10.18 0 0 30
Hianyolni kezd egy `unix' nevu fuggvenyt ?!
Előzmény: KoporShow (27)
KoporShow Creative Commons License 2001.10.18 0 0 29
En sem...
Előzmény: kisbetu (28)
kisbetu Creative Commons License 2001.10.17 0 0 28
Bocs, de nem értem, ez hogyan kapcsolódik az idézett hozzászóláshoz.
KoporShow Creative Commons License 2001.10.17 0 0 27
Ki a legnagyobb Guru ezen a forumon?

Ez itt a kerdes.

Aki kiprobalas nelkül megmondja, hogy mit csinal ez az egysoros program linux alatt gcc-vel leforditva, es hogy miert.

main(){printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}

A pelda Korn-tol, a korn shell irojatol szarmazik.

Előzmény: lx (26)
lx Creative Commons License 2001.10.11 0 0 26
Szasz!

Bocs, de URL-t nem keresek ki, arra ott a google Neked is. :)
Amit kérdezel, azt nagyon jól tudja az (X)emacs, a gvim, és az (x)fte - itt csak azokat írtam le, amelyek X alatt futnak, és amelyeket használtam/ok is.

Egyébként SZVSZ a sourceforge-on annyi ilyen editort találsz, hogy kín lesz választanod.

lx

Előzmény: khiraly (25)
khiraly Creative Commons License 2001.10.11 0 0 25
Ide is leirom, de mar ugy nez ki eleg regi a topic. Tehat honnan lehet letolteni olyan szovegszerkeszto X ala, ami ismeri a Highlight syntaxot, tehat hogy szep szinesek legyenek a parancsok, es a zarojelre kattintva a hozza kapcsolodo zarojelet.
Elore is kosz.
netizen Creative Commons License 2000.11.18 0 0 24
Sakcok az EGCS és a GCC tonképpen ugyanaz az sfw csak volt egy fork ugy '97 magasságában, ahol 1 egcs névre hallgató gittegylet (experimental gcc subproject) kezdett el optimált gcc-ket csinálni kölönböz? platformokra, chill, ada, java cross(compilereket) irkálni. A lényeg: '99 ?szét?l a 'product' teljes fele?ssége az EGCS terméktanácsra testálódott és ekkor jött ki a gcc 2.95.xx újra egységes termékként. mor nfo: http://gcc.gnu.org
Előzmény: Stocker (23)
Stocker Creative Commons License 2000.11.17 0 0 23
Úgy vettem észre, jó helyette a g++ is.

SD

Előzmény: dj (22)
dj Creative Commons License 2000.11.16 0 0 22
Stocker,

egcs-1.1.?-??.rpm-ben keresd.

Üdv:
dj

Előzmény: Stocker (21)
Stocker Creative Commons License 2000.11.16 0 0 21
Emberek, létezik a Red Hat 6.0 -ban qcc?

SD

dj Creative Commons License 2000.11.14 0 0 20
netizen köszönet!

A gcc verziót majd megnézem. A kde1 headerek nélkül nem fut le a ./configure mert keresi a small kde aplikációhoz a kdevelop configure.in fájlja. A Map, List, String definíciók nem az én mániám, hanem a qt programozói így írták meg, ezen nem hiszem, hogy változtatnom kéne.

Most hogyan tovább?

Üdv:
dj

Előzmény: netizen (19)
netizen Creative Commons License 2000.11.14 0 0 19
nos. a gcc 2.95.2-s gcc legyen. Ne keverd a kde 1.xx és a kde 2.xx headereket. A Map, List, String cuccokból baj lehet ezet STL-reserved cuccok. valami némszpész gebasz van.
Előzmény: dj (18)
dj Creative Commons License 2000.11.13 0 0 18
Sziasztok!

Nem igazán programozás, inkább fordítás. Kdevelop-ot szeretném újrafordítani KDE2 alatt. A KDE2-nek a qt-2.2.1 verzióra van szüksége. A Kdevelopnak állítólag 2.0-tól mindegy. A ./configure lemegy --with-qt-includes és libraris beállítva 2.2.1-re. Aztán jön a make. Itt rögtön az elején ezt a hibát adja:

g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/kde -I/usr/lib/qt-2.2.1/include -I/usr/X11R6/include -I/usr/lib/kde1/include -I/usr/include/kde -I/usr/lib/qt-2.2.1/include -I/usr/X11R6/include -I/usr/lib/kde1/include -O0 -g3 -Wall -frtti -c highlight.cpp
In file included from /usr/include/kde/kconfigbase.h:33,
from /usr/include/kde/kconfig.h:29,
from kwview.h:9,
from kwdoc.h:15,
from highlight.cpp:15:
/usr/lib/qt-2.2.1/include/qvariant.h:100: parse error before 'int'
A qvariant.h ezen része:
class Q_EXPORT QVariant
{
public:
enum Type {
Invalid,
Map,
List,
String,
StringList,
Font,
Pixmap,
Brush,
Rect,
Size,
Color,
Palette,
ColorGroup,
IconSet,
Point,
Image,
Int,
UInt,
Bool, // ez a 100. sor :-(((
Double,
CString,
PointArray,
Region,
Bitmap,
Cursor,
SizePolicy
};

Ezzel mi a fenét lehet kezdeni?
Elöre is köszönet.

Üdv:
dj

netizen Creative Commons License 2000.11.10 0 0 17
s/buf tipusu elekre/buf-ban tárolt elemtipusra
Előzmény: netizen (16)
netizen Creative Commons License 2000.11.10 0 0 16
Kistel ejjamit írtam az az, hogy a megoldás elve a stack/bázispointer/verem elve.Tekintettel arra, hogy pbuf buf tipusu elemekre mutat az elemek címzésével hidd el, hogy nem lesz baj. Ha jól megfigyeled én az sprintf()-t használtam és nem véletlenül!

tefmészetesen UNICODE esetben a dolog igy néz ki:
wchar_t buf[1024];
wchar_t* pbuf=buf;
pbuf+=sprintf(pbuf,"%ls",(const wchar_t*) "Egyik");

Az ilyen dolgokat persze igazad van speckó esetben használja az emeber, vagyis olyankor amikor futási idben derül ki, hogy pontosan hány darab text darabkát konkatenálsz pl textgenerátorok.

Előzmény: Kistel (15)
Kistel Creative Commons License 2000.11.10 0 0 15
Kedves netizen,

Sajnos a megoldásod hibás, ugyanis senki nem garantálja, hogy a verem abban az irányban telik, ahogyan te várod. Sőt az sem biztos, hogy az a szegény puffer a veremben lesz. Semmi sem biztos.

Más kérdés, hogy azon az rendszeren, amin írtad, működik.

Plusz adalék: részlet a man-ból:


These functions return the number of characters printed (not including the trailing `\0' used to end output to strings). snprintf and vsnprintf do not write more than size bytes (including the trailing '\0'), and return -1 if the output was truncated due to this limit. (Thus until glibc 2.0.6. Since glibc 2.1 these functions return the number of characters (excluding the trailing '\0') which would have been written to the final string if enough space had been available.)

Ezek szerint a megoldásod hibádzik, ha pl. UNICODE-os a rendszer; ilyenkor 1 karakter = 2 byte, azaz az sprintf által visszaadott értéket szorozni kéne kettővel (innentől a kód nem hordozható).

(Ráadásul az snprintf-nél még érdekesebb a helyzet, hiszen ott -1 is lehet az eredmény... bár itt nem erről volt szó.)

Miért nem jó a hagyományos megoldás?


char buf[1024];
sprintf( buf, "%s%s%s", "Egyik", "Másik", "Harmadik" );

Üdv,
Kistel

Előzmény: netizen (14)
netizen Creative Commons License 2000.11.10 0 0 14
a konkatenáló fragment igy néz ki:

char buf[1024];
char* pbuf=buf;

pbuf+=sprintf(pbuf,"%s","Egyik");
pbuf+=sprintf(pbuf,"%s","Masik");
pbuf+=sprintf(pbuf,"%s","Harmadik");
:
.

A dolog ötlete a jól ismert base/stack pointer :>
A dologban az a crazysexycool, hogy amikor az Egyik utan ragasztja a "mMsikat", akkor az egyik vegen levo \0-t szepen felulcsapja a Masik "M" jevel, tehat a pbuf mindig a stringed vegere mtutat, frankon...

Előzmény: dj (10)
Kistel Creative Commons License 2000.11.06 0 0 13
A conio-t ne használd, nincs abban semmi érdekes :-) (Magyarázat: conio = console I/O ami DOS-on OK, de Linux alatt vagy stdio kell vagy curses-szerűség)

Szóval, mire is akarod a conio-t használni? :)

Kistel

Előzmény: BOB (12)
BOB Creative Commons License 2000.11.06 0 0 12
#include [conio.h]
ez az a fuggvenykonytar, amit nem sikerult megtalaltatnom a gcc-vel. Vegignezve a Contents-i386-gz-t, nincs ojan csomag amiben szerepelne. Namostakkor micsinaljak?
A [ ] csak a html kodok miatt van, egyebkent hejesen irom :)
wolfeinstein Creative Commons License 2000.10.30 0 0 11
Hali!
Nem C, de programozas: freepascalhoz kellene egy leforditott fpide. Rendelkezik valaki ilyennel?
dj Creative Commons License 2000.10.26 0 0 10
NevemTeve,

hát igen. Nekem az a bajom, hogy eddig windóz alatt szinte csak adatbázist programoztam, a c-t csak úgy jó távolról figyelgettem, de most linux alatt a két dolgot tudni kéne együtt használni. Mindegy majdcsak lesz valahogy, már az is működik amit alább vázoltam. :-)) A SQL-t meg szépen megírogatom, tulajdonképpen c-ben "csak" az adatok megjelenítését kell csinálni. Aztán, ha összeáll valami használható áruforgalmi progi, majd felteszem valami oldalra, és akit érdekel onnan leszedheti, aki pedig expert c-ben mikor jól kiröhögte magát esetleg lepucolja a kódot, ha van kedve :-))

Üdv:
dj

Előzmény: NevemTeve (9)
NevemTeve Creative Commons License 2000.10.26 0 0 9
Naszoval, komolyabb dolgokat igy szoktunk csinalni:

sprintf (buffer, "SELECT cim %s", table_name);
PQexec (conn, buffer);

azt hiszem ennek a feladatnak a legkonnyebb resze kellene legyen a parancssor osszerakasa...

dj Creative Commons License 2000.10.25 0 0 8
NevemTeve,

Esetemben arra, hogy egy fügvény állítson elő egy SQL parancsot, mondjuk egy "tabla1" nevü tábla adatainak olvasására küldje el a szervernek (a megfelelő többi SQL paranccsal) és adja vissza értéknek, hogy sikerült-e a dolog avagy sem. Ha igen akkor olvassa ki az adatot egy qt widgetbe, hogy láthassam is a képernyőn. És hogy az ehhez tartozó összes SQL parancsokat ( ami végülis ugyan az állandóan pl. BEGIN stb.) ne kelljen mindíg végigírni különböző táblákhoz, egyszerűbbnek tűnik egy függvényben megcsinálni aminek char *name a bemeneti adatata és bool a visszatérő. Ezt a name változót kell az előtte lévő SQL sztringhez fűzni. Vagyis:

char SQLstring[100];

.
.
.
.

strcpy( SQLstring, "SELECT cim * " );
strcat( SQLstring, name ); // name="tabla1"

PQexec( conn, SQLstring );

stb.

Üdv:
dj

Előzmény: NevemTeve (7)
NevemTeve Creative Commons License 2000.10.25 0 0 7
char abuff[100];
char b[]="Elso";
char c[]="Masodik";

strcpy (abuff, b);
strcat (abuff, c);

Mire is kellene mindez ?

dj Creative Commons License 2000.10.24 0 0 6
Megoldódni látszik, de ha a mutatós megoldást valaki tudja az nekíméljen. Szal azért találták ki a fügvényeket, hogy használják azokat ez az egyszerübb megoldás:

char a{100];
char *b; // ez nem feltétlen fontos, de akkor minek ez a hercehurca? :-))

b="második"; // ez sem feltétlen fontos

strcpy(a, "elsö "); // a-ba másoljuk az első sztringet

strcat(a,b); // vagy nem deklarált b mellett strcat(a, "második"); // hozzáadjuk a második sztringet

Ez már működik, ha az egész sztring nem hosszabb 99 + \0 karakternél.

Üdv:
dj

Ui: milyen apróságoknak is tud örülni az ember! :-))

Előzmény: dj (5)
dj Creative Commons License 2000.10.24 0 0 5
Sziasztok!

Elörebocsátom, nem vagyok valami expert c-ből ezért is teszek fel ilyen lamer kérdést.

A feladat, öszefűzni két sztringet amit a strcat(a,b) függvény végezne, de csak akkor, ha van elég hely az a változóban, különben futás közben leáll. Ha simán definiálom a-t és b-t:

char *a;
char *b;

a="elsö ";
b="második"

strcat(a,b)

visszatérése után a-ban "első második"-nak kéne lenni, de miután nem foglaltam helyet a-ban b-nek így a program futás közben leáll.

Gondoltam másképp definiálom a-t és kap egy mutatót amit ugye a:

char a[100]; // a karaktertömb
char *ap; // a karaktertömbre mutató mutató

ap=a; // vagy ap=&a[0]; // a karaktertömb első elemének a címe

tenne meg. Ez azért nem műxik mer ap char mutatónak van definiálva és szerintem ezért a cím amit kap nem igazán a-ra mutat. Nekem logikusnak a:

char a[100];
int *ap;

ap=a; // vagy ap=&a[0];

deklaráció tűnne, miután ap-ben címek mozognak, de a fordító már fordításkor kiírja, hogy hibás értékadás. Ha valaki tudja, hogy mit rontok el attól szívesen fogadnám a segítséget.

Üdv:
dj

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!