C (linguaggio di programmazione): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m C11: Eliminato una riga vuota
m Corretto la formattazione
Riga 1:
{{U|verso=da|Header file|Informatica|luglio 2023}}
 
{{Linguaggio di programmazione
|nome = C
Riga 22 ⟶ 21:
 
== Storia ==
 
Il linguaggio fu originariamente sviluppato da [[Dennis Ritchie]]<ref>{{Cita pubblicazione |autore-capitolo=Dennis Ritchie |autore-capitolo2=Brian Kernighan | data=2004 |titolo=Il linguaggio C. Principi di programmazione e manuale di riferimento |editore=Prentice Hall |capitolo=XI |p=320 |url=https://www.pearson.it/opera/pearson/0-2552-il_linguaggio_c ||citazione=C fu progettato e scritto per il sistema operativo UNIX, sul DEC PDP-11, da Dennis Ritchie}}</ref> presso i [[Bell Laboratories|Bell Labs]] della [[AT&T]] tra il 1969 e il 1973, con lo scopo di utilizzarlo per la stesura del sistema operativo [[UNIX]], precedentemente realizzato da [[Ken Thompson]] e Ritchie stesso in [[assembly]] del [[PDP-7]]. Nel 1972 esordì il primo sistema UNIX su un DEC [[PDP-11]], scritto interamente col nuovo linguaggio di programmazione C.<ref>{{Cita web |url=https://www.bell-labs.com/usr/dmr/www/chist.html |titolo=The Development of the C Language |autore=Dennis Ritchie |sito=Bell Labs/Lucent Technologies |data=1993 |lingua=en |formato=pdf |citazione=C came into being in the years 1969-1973, in parallel with the early development of the Unix operating system; the most creative period occurred during 1972 |accesso=1º maggio 2017}}</ref> Nel [[1978]], la pubblicazione del libro ''[[Il linguaggio C]]'' ne fece crescere rapidamente la diffusione, portando alla nascita di diversi ''dialetti'' e dunque alla necessità di definire uno standard.
 
Riga 29 ⟶ 27:
=== Funzionalità introdotte nelle revisioni del linguaggio ===
==== C99 ====
 
* Il tipo di dato <code>_Bool</code>, che ammette la memorizzazione dei booleani ''false'' e ''true'';
* Il tipo di dato <code>_Complex</code> per la rappresentazione dei numeri complessi;
Riga 55 ⟶ 52:
 
==== C11 ====
 
Lo standard C11 ha introdotto cinque nuovi file header, ovvero <code>&lt;stdalign.h&gt;</code>, <code>&lt;stdatomic.h&gt;</code>, <code>&lt;stdnoreturn.h&gt;</code>, <code>&lt;threads.h&gt;</code> e <code>&lt;uchar.h&gt;</code>, nonché diverse funzionalità che hanno contribuito a migliorare il linguaggio:
 
Riga 138 ⟶ 134:
 
== Esempi di programma ==
 
=== Hello world! ===
{{Vedi anche|Hello world}}
Riga 238 ⟶ 233:
 
== Linguaggi collegati ==
 
Molti tra i principali linguaggi di programmazione moderni sono ispirati a C e ne ereditano parte della sintassi. Alcuni linguaggi (come [[Java (linguaggio di programmazione)|Java]], [[C++]], [[C sharp|C#]] e [[Objective C]]) mantengono buona parte della sintassi di C e la estendono per meglio supportare differenti paradigmi di programmazione, mentre altri linguaggi modernizzano la sintassi ma cercano di mantenere gli stessi paradigmi e domini applicativi di C, come programmazione di sistema (ad esempio [[Go (linguaggio di programmazione)|Go]]) o [[sistema embedded|sistemi integrati]] (ad esempio [[Zig (linguaggio di programmazione)|Zig]]).
 
Riga 265 ⟶ 259:
 
== Bibliografia ==
 
* {{cita libro|autore=Dennis M. Ritchie|autore2=Brian W. Kernighan|titolo=Linguaggio C|url=https://archive.org/details/linguaggioc|anno=1985|editore=Gruppo Editoriale Jackson|isbn=88-7056-211-5}}
* {{cita libro|autore=Dennis M. Ritchie|autore2=Brian W. Kernighan|titolo=Il Linguaggio C - Principi di programmazione e manuale di riferimento|editore=Pearson Paravia Bruno Mondadori S.p.A.|ed=2|isbn=978-88-7192-200-3|cid=ILC2}}