Új hozzászólás Aktív témák
-
buherton
őstag
Oké
.a[i] = i++;
Mit eredményez?
char foo[3] = "bar";
Mi lesz a tömbben?
char *string = "foo bar";
Miért nem módosítható pl. az első elem? Egyáltalán lefordul? Ha igen/nem miért?
typedef struct foo *BAR;
struct x
{
char c;
BAR ptr;
};Lefordul?
struct x
{
char c;
int i;
} foo bar;Lefordul? Ha igen/nem miért?
Az enum teljesen mértékben portábilis?
Az elsőről már hallottam, de még soha nem használtam (nem kellett még). Bevallom derekasan a középsőről nem hallottam még. Az object (.o) fájl (és mellé kerülnek egyéb fájlok, mint pl. a nagyon hasznos .lst is) a következő lépcső a preprocesszált fájl után, ami gyakorlati értelembe vett fordtási szakasz. A header fájlok alapján kívülről elérhetők az egyesek függvények, tömbök, változók, és egyéb szimbólumok, amit majd később a linket fog összekötözgetni. A linker már teljesen független a nyelvtől. Szimbólumokat kötözgeti össze és közben persze figyelembe veszi az egyéb fordítónak szóló utasításokat, amivel mondjuk linkelés során tovább lehet optimalizálni, függvényeket elhelyezni a memóriatérben, összecsomagolja pl. a struktúrákat (__attribute__(packed)) stb... Kimenete a bináris/hex (Intel, Motorola, stb...), .map (memória térkép, meg lehet nézni hogy az egyes függvények és társaik hol találhatók), .elf (debuggoláshoz kell). Azt tudni kell, hogy a forítás során utasítani lehet hogy az egyes program blokkokat egy egységként kezelje, aminek az eredménye, hogy a szorosan összetartozó object fájlokat már a fordítás során összelinkelni .a-fájlá. Az optimalizálás hatékonyabb, hogy ha két körösen fordítunk, ahol az első körben csak kielemzi az optimalizálási lehetőséget, majd második körben további optimalizációs lehetőségeket keres, majd fordít. Bár a tudásom megkopott, mert jó ideje nem kellett ezzel foglalkoznom.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- OLED monitor topic
- Váratlanul ledobta asztali csúcs-Ryzenjét az AMD
- Luck Dragon: Óraátállítás
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Projektor topic
- Villanyszerelés
- Megérkezett a Samsung Galaxy A37 és Galaxy A57
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- TCL LCD és LED TV-k
- BestBuy topik
- További aktív témák...
- HIGH-END GAMER PC Ryzen 7 9850X3D / RTX 5080 16GB / 32GB DDR5 / 850W 80+PLAT / 1TB NVMe - Beszámítás
- Lenovo ThinkPad E495,14" FHD,AMD Ryzen 5 PRO 3500U,8GB DDR4,256GB SSD,WIN11
- ELADÓ Nvidia Geforce 9800 GX2 /dupla GPU .. nv SLi/ !!!
- Club 3D Radeon 9600XT 128MB 128 bit, AGP grafikus kártya
- Nvidia Geforce 6800 Ultra AGP Eladó !!!
- LIDL akkumulátor és generátor teszter
- AKCIÓ! Apple MacBook Pro 14 M4 Max 48GB RAM 1TB SSD notebook garanciával hibátlan működéssel
- HIBÁTLAN iPhone 14 Pro Max 512GB Silver -1 ÉV GARANCIA - Kártyafüggetlen
- Samsung Galaxy A33 5G / 6/128GB / Kártyafüggetlen / 12Hó Garancia
- HP EliteBook 855 G7 15,6" Ryzen 5 PRO 4650U, 16GB RAM, 256GB SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
.