[elektro] C függvény kérdés?
hg12345
hg12345 at freemail.hu
Fri May 28 15:58:48 CEST 2010
MIndenkitől elnézést, de a freemail webmail szerkesztőjét használom és a sortördelő karaktereket kiveszi, engem is nagyon idegesít, érdekes a szimpla felülete meg jó (most is ezen irok). Nem tudok rájönni mi a kettő között a különbség.
A visszatérési érték fel cast-olása nem tünik jó megoldásnak, mert legtöbbször int(int16) vagy long (int32) amit lekérdezek, egy long long kezelés már viszi a programterületet.
Amit írtál az tetszik tényleg olvashatóvá teszi a függvény meghatározást.
Köszi az ötletet.
u.i.: asm után rettentő idegesítő, hogy egy normális bit kezelést és proci status regisztere által nyújtott támogatás a C-ben nincs felhasználva..... (tudom fordítva gondolkodom....)
Ha a visszatérési érték egy szám (mondjuk egy byte) akkor adj vissza egy 16
bitest. A felső 8 bit, hogy van-e érték. Ez kicsit tré. A szebbik megoldás
az amit írtál, hogy, ha pointer-t kap bemenő értékként és oda teszi az
eredményt, ezt szokták jelölni:
#define OUT
char do_something(int par1, int par2, OUT char *);
És ilyenkor egyértelműen látszik, hogy kimenet.
ps: Nem tudnál vmit csinálni a tördeléssel? Nagyban nehezíti az értelmezést.
Üdv,
Lajos
2010/5/28 hg12345 <hg12345 at freemail.hu>
> Hi! Mi a C szerű megoldás olyan kiolvasásokra amik esetleg nem
> lehetségesek? pl.: a készülék konfigurációja szerint egyes adatok nem
> keletkeznek és az öröklődés miatt szükséges a létezéséről tudni ez ASM-ben
> igen egyszerű volt pl.: C(Z)-ben adtam vissza az érvényességet és a
> megfelelő regiszterekben az adatot, ha volt. (egyszerű és mindig
> alkalmazható) Ez C-ben, így nem oldható meg, mert a függvénynek csak egy
> visszatérő adata lehet, és nem szeretnék minden kiolvasáshoz egy strukturát
> létrehozni.... (nem túl általános megoldás) Mi a C-szerűbb megoldás - két
> függvény hívás (1 létezés, 2 érték olvasás)- függvény hívás struktura
> visszatérő értékkel- függvény hívás létezést megadó visszatérő értékkel és
> egy pointeres megadású paraméterrel Van valami jobb megoldás erre? üdv
> -----------------------------------------
> elektro[-flame|-etc]
>
-----------------------------------------
elektro[-flame|-etc]
More information about the Elektro
mailing list