Ú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!
- Toshiba 500 GB 2,5 Notebook HDD
- VTX AMD Radeon HD 6870 1 GB GDDR5 256 bit PCI-E Videokártya
- G.SKILL Trident Z5 Royal Neo Silver 64GB (2x32GB) DDR5 6000MHz CL30 - Élettartam garancia
- XFX Quicksilver AMD Radeon RX 7800 XT Magnetic Air - Arctic White - Alza garancia 2028.02.25.
- Apple iPhone 15 128GB,Újszerű,Dobozával,12 hónap garanciával
- Fém, összecsukható és kihúzható fotó állvány eladó
- BESZÁMÍTÁS! ASUS PRIME H510M i5 10400F 16GB DDR4 512GB SSD RX 6600 XT OC 8GB CHIEFTEC Libra 600W
- KIÁRUSÍTÁS - HP Elite / ZBook Thunderbolt 3 Dock (akár 2x4K felbontás)
- Újszerű HP 14s-dq5001nh - 14"FHD IPS - i5-1235U - 16GB - 512GB - Win11 - Magyar - Garancia
- 0% THM 4 havi részlet beszámítás! RX 9060 XT / 9070 / 9070 XT videokártyák készletről KAMATMENTESEN
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest
.
