Witam czy standartowy "C" obsluguje tylko przekazywanie przez wartosc i wskaznik????
- posted
17 years ago
Witam czy standartowy "C" obsluguje tylko przekazywanie przez wartosc i wskaznik????
Pawel K schrieb:
tak
Waldek
Tak. Referencje to wynalazek C++
TP.
no nie całkiem. Algol już też je miał. Ale z rodziny C to masz rację ;-)
Waldek
Waldemar napisał(a):
W Pascalu też można było przekazać nazwę zmiennej (var zmienna) tak aby w funkcji operować na niej podobnie jak na innych zmiennych lokalnych (bez korzystania ze wskaźników). BTW: Pierwszy na świecie był Algol czy Pascal?
Adam Dybkowski schrieb:
zadanie z historii programowania ;-).
Po autokodach pierwszy był Fortran (chyba rocznik 1956). Potem Algol-60, następny był Algol-68, potężne bydlę, chyba do tej pory nie udowodniono, czy istnieje kompilator implementujący kompletną gramatykę tego języka. Zresztą jest to chyba jedyny język programowania z formalnie zdefiniowaną semantyką i nieskończoną gramatyką ;-). Nawiasem mówiąc, apropos referencji, Algol 68 miał automatyczne dopasowanie stopnia referencji przy przypisaniu. Pascal powstał później, pod koniec lat 60tych ub. stulecia, formalnie zdefiniowany na pocz. 70tych. W tych okolicach powstał również B, a potem z niego C.
Waldek
Nawiasem mowiac Fortran mial przekazywanie tylko przez "referencje".
Co prowadzilo do "uzmienniania stalej" :-)
J.
no i jeszcze takie fajne powiedzonko:
"God is real unless declared as integer"
To chyba tylko znający Fortran zrozumią ;-)
w sumie przekazywanie zmiennych może być na różny sposób: call by value, call by reference, call by name, call by name reference. Nawiasem mówiąc C ma tylko przekazywanie wartości. To, co się popularnie nazywa przekazywaniem przez referencję to jest tylko przekazywaniem wartości wskaźnika.
Waldek
Między FORTRANem a Algolem powstał jeszcze LISP (1958-1959).
w.
no języków programowania było jeszcze mnóstwo, ja pisałem wyłącznie o językach proceduralnych. W latach 60tych powstała jeszcze Simula. A Cobol? Chyba do tej pory Cobol wiedzie prym w wartości programów (w G$), ale to dlatego, że w Cobolu były pisane programy dla banków, które kosztują wielkie pieniądze. No i była jeszcze Ada, napisana na żądanie NASA i DoD, by zmniejszyć ilość języków programowania, których było wtedy chyba 200, choć nie wiem, jak to liczyli. Pewnie języki i dialekty. Ada się jakoś zbytnio nie rozpowszechniła. A z Pascala powstała Modula, też jakoś umarła śmiercią naturalną.
Waldek
Ale te co nowsze sa w jakis przyczlapach do SQL.
Chyba nie musieli.
I Delphi.
Z ciekawszych wymienie jeszcze PL/1, jezyk w ktorym 1<>1 :-)
J.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.