Kezdőoldal » Számítástechnika » Programozás » Tudtok olyan oldalt v. letölth...

Tudtok olyan oldalt v. letölthető PDF-et, ami pontról-pontra leírja, hogy mi az, ami CSAKIS a C-programozási szigorú szabvány?

Figyelt kérdés

Azt hiszem olyanra gondolok, mint a '70-es évek környékén kiadott Dennis Ritchie féle könyv, csak az neten is elég ritka lehet - eddig mindegyik fájlcserélőről törölve volt, ahhol kerestem.


Olyan kéne, ami minden apróságra is kitér, DE SEMMIVEL SEM TÖBBET (ami az elméleti szabványban nincs benne): leírja, hogy mi a szabványos függvénykönyvtár, hogyan lehet használni/kombinálni a szerkezeteket, operátorokat, makrókat leírja.... Szóval a max, amit MINDEN eddigi és eljövendő fordítónak tudni kell, de semmi mást.


Nagyon megköszönném, ha mutatna valaki egy ilyen leírást, mert beadandóhoz kell, és ezt ott nagyon nézik... viszont kellőképpen összetett a feladat ahhoz, hogy a lehető legtöbb mindent használjam, amit csak lehet.

Remélem érthető a kérdés... (??)



#nyelv #programozás #szabvány #Brian #K&R #Ritchie #Kernighan
2014. jan. 9. 19:27
 1/4 A kérdező kommentje:

Ja, és ha még lehet egy kérdésem : Arról van lista, vagy valami, amiből megtudom, hogy úgy amblokk mi az a sok minden (műveleti operátoroktól elkezdve a makrós dolgokon át a nemtudomhogyhívjákokig), AMIKHEZ nem kell függvénykönyvtár (még a legszabbványosabb függvénykönyvtár sem), tehát semmi header, .h fájl, library-k meg object-fájlok.

Ilyesmikre gondolok:

sizeof(_valami_)

typedef struct _valami_ {...

_valami_ >>= _valami_ (biteltolás)

+, -, *, /

^, |

stb.


Mert hogy a feladatban még az is benne van, hogy nem használhatok beépített függvénykönyvtárat :(

2014. jan. 9. 20:03
 2/4 anonim ***** válasza:

C-szabvány:

[link]

2014. jan. 12. 16:37
Hasznos számodra ez a válasz?
 3/4 A kérdező kommentje:

Köszönöm, hogy végre legalább egy komment érkezett.


Viszont a beadandómhoz ez sajna nem jó, amit linkeltél.

Ez már egy bőven '90-es évekbeli szabvány (ahogy olvastam a bevezetőben, 1999-es, ráadásul ez a kiadás, ha jól láttam, 2004-es)... ez pedig már bőven túlmutat (bizonyos dolgokban) azon, amit nekünk szabadna használni.


Legjobb lenne erre a K&R szabvány, ami tudtommal tényleg a legeslegelső, tehát azt - ha mást nem - 35 évre visszamenőleg gondolom minden megjelent fordítónak támogatnia kell.


Részletekben tudok olyanokat, hogy pl. a void, const, sizeof kulcsszavak nem lehetnek benne... ilyesmik.... de nekem ez így kevés. :(

Egy olyan szabványleírás kéne, ami mindent leír, ami csak a nyelv eleme vagy lehetősége, amire igazából csak gondolni lehet. Persze a "minden" szó szoros értelemben képtelenség, de mondjuk olyasmire gondolok, hogy:


typedef struct Man {

char *name;

int year;

} Man;


Man men[5];


// ... tömb feltöltése ... //


Man temp = men[0];

men[0] = men[5];

men[5] = temp;



Ezt pl. az ANSI-C már megengedi, hogy struktúrát egy-az-egybe átmásoljak, és a fenti példa szerint így cseréljek.

De tudtommal a K&R féle C-ben még ez sem volt evidens és mindenhol implementált.

És pl. az ANSI-C-n felül ebben a példában van olyan fordító, ami a XOR-os cserét is végrehajtja struktúrákon.


Szóval kéne egy ilyen szabványleírás, ami hoz ezekre példát, hogy lehet ilyet-meg-ilyet is (a nagyon alap dolgokon felül).

Az nem számít nekem, hogy milyen hosszú - mert nyílván hosszú ezeket mind leírni -, illetve az sem, hogy angol, amíg azt középfokú nyelvtudással megérthető... DE LEGALÁBB LENNE, amit me tudok mákolni ahhoz, hogy elkészítsem ezt a retkes beadandóm még amíg engedik.

2014. jan. 12. 17:35
 4/4 A kérdező kommentje:

Meg ami még viszonylag világos kikötés, hogy "elvileg, belülről 8 bites CPU-n is tudnia kell futni és működni"... gondolom ez azért nem több, mint hogy max. 'char' típust használhatok (bár a matekos részét így is nagy retekség megoldani).


Vagy ami még eszembe jutott, hogy esetleg nem tud valaki egy ŐSRÉGI (esetleg a legelső) C fordítót, ami az ősrégi szintaktikát, nyelvi leírást követi és implementálja?


TUDOM, hogy ez az egész egy nagy marhaságnak tűnik, de nem én találtam ki, higgyétek el, leírás szerint BÁRMELY fordítóval fordulnia kell.


Persze a BÁRMELYT úgy kell érteni, hogy nyilván nem egy mikrokontroller programozása az elvárt feladat (az nem is C-ben lenne gondolom), de egy 800 MHz-es 16bit-es PIC-en már minimum fordulnia kell, kb. (Illetve amint mondtam, 1 byte az egyszerre kezelhető adathossz).


PC-n fogják fordítani PIC-re, de tényleg valami ősrégi fordítót, ezt előre nem is lehet tudni (direkt, mert ezzel szivatnak minket, hogy ez mire jó?).

2014. jan. 12. 17:48

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!