Operatori in C e C++: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Miglioramento delle traduzioni e aggiunta di ulteriori riferimenti
 
(4 versioni intermedie di 2 utenti non mostrate)
Riga 1:
Questa è una lista degli [[Operatore (informatica)|operatori]] nei [[Linguaggio di programmazione|linguaggi di programmazione]] [[C (linguaggio di programmazione)|C]] e [[C++]]. Tutti gli operatori seguenti sono implementabili in quest'ultimo linguaggio, mentre invece altri non lo sono in C, come nel caso degli operatori ''typedi conversion''[[conversione (di tipo]] (casting), ossia <code>const_cast</code>, <code>static_cast</code>, <code>dynamic_cast</code>, e <code>reinterpret_cast</code><ref name=":0">{{Cita libro|autore=Luis Joyanes Aguilar|titolo=Fondamenti di programmazione in C++. Algoritmi, strutture dati e oggetti|edizione=II edizione in lingua italiana|anno=2008|editore=[[McGraw-Hill Education]]|città=[[Madrid]]-[[Milano]]|ISBN=978-88-386-6477-9}}</ref><ref>{{Cita libro|autore=Stanley Lippman|autore2=Josée Lajoie|autore3=Barbara Moo|titolo=C++ Primer|anno=2013|url=https://archive.org/details/cprimer0000lipp_5thed|edizione=V edizione|editore=Addison-Wesley Professional|ISBN=978-0321714114}}</ref><ref>{{Cita web|url=https://www.html.it/pag/72598/conversione-di-tipo/|titolo=Conversione di tipo|sito=HTML.it|accesso=2024-09-14}}</ref>.
 
Molti degli operatori disponibili in C e C++ sono implementabili pure in altri linguaggi della cosiddetta “C“famiglia family”C”, quali [[C sharp|C#]], [[D (linguaggio di programmazione)|D]], ma anche [[Java (linguaggio di programmazione)|Java]], [[Perl]] e [[PHP]], mantenendo le medesime caratteristiche mostrate (arietà, posizione e associatività)<ref>{{Cita web|url=https://www.andreaminini.com/programmazione/c/c-sharp|titolo=Il linguaggio C#|sito=www.andreaminini.com|lingua=it-IT|accesso=2024-08-30}}</ref><ref>{{Cita web|url=https://dlang.org/spec/operatoroverloading.html|titolo=Operator Overloading - D Programming Language|sito=dlang.org|accesso=2024-08-30}}</ref>.
 
== Sintassi degli operatori ==
Riga 787:
|}
 
==== Critiche sulle precedenze degli operatori ====
La precedenza degli operatori logici bitwise è stata al centro di numerose critiche<ref>{{Cita web|url=https://www.bell-labs.com/usr/dmr/www/chist.html|titolo=Chistory|sito=www.bell-labs.com|accesso=2024-08-30}}</ref><ref>{{Cita web|url=https://www.perlmonks.org/?node_id=1159769|titolo=Re^10: next unless condition|sito=www.perlmonks.org|accesso=2024-08-30}}</ref>, poiché concettualmente, <code>&</code> e <code>|</code> sono operatori aritmetici come <code>*</code> e <code>+</code>.
 
Per esempio, l'espressione <code>a & b == 7</code> viene sintatticamente analizzata come <code>a & (b == 7)</code>, mentre l'espressione <code>a + b == 7</code> viene analizzata come <code>(a + b) == 7</code>. Ciò richiede l'uso delle parentesi più spesso di quanto sarebbe altrimenti necessario.
Riga 858:
 
== Collegamenti esterni ==
 
* Volle, Adam. "C++". [[Enciclopedia Britannica|''Encyclopedia Britannica'']], 19 Jun. 2024, https://www.britannica.com/technology/C-computer-language;
* [https://learn.microsoft.com/en-us/cpp/?view=msvc-170 Microsoft C++, C, and Assembler documentation].
{{C++}}{{Linguaggio C}}
{{Principali linguaggi di programmazione}}{{Controllo di autorità}}