Ú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!
- Milyen egeret válasszak?
- Formula-1
- TCL LCD és LED TV-k
- sziku69: Szólánc.
- Intel Core i7-5xxx "Haswell-E/EP" és i7-6xxx "Broadwell-E/EP" (LGA2011-v3)
- PlayStation 5
- Milyen videókártyát?
- Lenovo Legion 5i 15 notebook: légiós fegyverzetben
- Mindenkinél több és erősebb AI gyorsítót ígér Elon Musk
- Kivégezheti a kisebb VGA-gyártókat az NVIDIA döntése
- További aktív témák...
- Bontatlan iPhone 16 Pro (128 GB) (rendelhető)
- Thinkpad L13 Yoga i5-10210U 16GB 512GB 13.3", Touch gyári magyar világítós bill 360 Gar.: 1év
- Apple iPhone 11 Pro Max 64GB mobiltelefon
- Huawei P30 Lite / 4/128GB / Kártyafüggetlen / 12Hó Garancia
- BESZÁMÍTÁS! ASRock B650 Steel Legend WiFi R5 8600G 32GB DDR5 500GB SSD RX 7800XT 16GB NZXT H700i
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
.
