Hongaarse notatie
De Hongaarse notatie is een afspraak voor het geven van namen bij het programmeren van computers, waarbij de naam van een object zijn datatype aangeeft.

De Hongaarse notatie was bedoeld om taalonafhankelijk te zijn, en de eerste belangrijke toepassing was bij de BCPL-programmeertaal. Omdat BCPL geen datatypes gebruikt behalve "word", is het moeilijk voor de programmeur om het datatype te herkennen of te onthouden. 

Bij de Hongaarse notatie begint de naam van elke variabele met één of meerdere kleine letters die ezelsbruggetjes zijn voor het type of het doel van de variabele, gevolgd door de rest van de naam die de programmeur zelf kiest (dit noemt men de "gegeven naam"). De eerste letter van de gegeven naam moet een hoofdletter zijn om het onderscheid te maken met de type-aanduiding (zie ook CamelCase).

Voorbeelden
 ulHoeveelheid: de variabele is een unsigned long geheel getal
 szNaam: de variabele is een tekstreeks afgesloten met een nul (string zero terminated)
 fBusy: een variabele is een vlag (flag)
 pFoo: een pointer 
 pszOwner: een pointer naar een tekstreeks afgesloten met een null
 rijPositie: de variabele geeft een rij weer

Hoewel de Hongaarse notatie bij elke programmeertaal gebruikt kan worden, werd ze uitgebreid gebruikt door Microsoft in de C-taal, met name voor Windows.

Veel gebruikte voorvoegsels
b : bool
by : byte of unsigned char
c : char
dw : DWORD, double word of unsigned long
fn : functie
h : handle
i : integer
l : long
n : short int
p : pointer
s : string
sz : string afgesloten met nul
w : WORD unsigned int

Oorsprong
De originele Hongaarse notatie werd uitgevonden door Charles Simonyi, een programmeur bij het Xerox Palo Alto Research Center (PARC), en is genoemd naar zijn land van oorsprong. Hongaarse namen worden omgekeerd genoteerd ten opzichte van de meeste Europese namen: de familienaam staat eerst en daarna de voornaam. (Simonyi's naam wordt in het Hongaars geschreven als Simonyi Károly).

Externe link
Charles Simonyi's uitleg van Hongaarse notatie

Programmeerconcept