Sistem programlamada yazim stili olarak macar notasyonu (hungarian notation) kullanilir.
Macar notasyonuna göre;
- Fonksiyonlar pascal tarzı harflendirilir. Yani her sözcüğün ilk harfi büyüktür. (her sozcugun ilk harfi buyuktur. Fiiller ince kullanilir.)
 - GetWindowLong(), CreateProcess()
 - Degiskenler genellikle onun turunu belirten bir önek ile başlatılır. Degişkenler deve notasyonu ile isimlendirilir. (camel notation)
 - BYTE, WORD ve DWORD typedef isimleri sırasiyla 1, 2 ve 4 byte lik işaretsiz tam sayı türlerini temsil eder.
 - Typedef isimlerindeki P öneki ve LP öneki gösterici anlamına gelir. (Windows 3.x sistemlerinde farkli anlama gelmektedir.)
 - Word kavramı donanım ve yazılımda farklıdırlar. Yazılımda 2 byte, ama donanimda register uzunlugu olarak adlandirilirlar.
 - Gösterdigi yer const olan const göstericilerde PC veya LPC öneki kullanılır.
 - Yazi türleri (char türden göstericiler) SZ yada LPSZ ile baslatilir.
 - PSTR, LPSTR, LPCSTR yazıyı gösteren gösterici anlamındadır.
 - BOOL türü başarı ve başarısızlığı anlatan bir türdür. INT olarak typedef edilmistir. ( 0 basarisiz, 0 disi basarisiz)
 - fonksiyon tanimlarinda in, in_out, ve __out ifadeleri sirasiyla ver kullanayim, ver icini ben de doldurayim ve ver icicin doldurayim manasinda kullanilir. CreateProcess() fonksiyonunun msdn icerisindeki dokumani icerisinde gorulebilir.
 
Unicode Kullanımı
- java ve c# da char turu 2 byte tutar. C de ise 1 byte dir.
 - typedef unsigned short wchart;
 - 32 bi windows sistemlerine gecildiginde unicode kullanimi da devreye girmistir. Butun yazi parametresi alan fonksiyonlardan aslinda 2 tane bulunmektedir. Sonu A ile birenler ASCII sonu W ile bitenler UNICODE anlamina gelmektedir.
 - Biz program yazarken genellikle A ve W olmayan isimleri kullaniriz bu isimler duruma gore A ve W lu bicime donusturulurler.
 - IDE de bu ayar proje seceneklerinden yapilmaktadir ve default durum UNICODE bicimindedir.
 - CreateProcessA (ascii)
 - CreateProcessW (unicode)
 - C de ascii string “xxxx” biciminde, unicode string L”xxxxx” biciminde yazilir. Eger programimizi ascci ile unicode arasinda istedigimiz zaman cevirebilecegimiz bicimde yazmak istiyorsak. Butun iki tirnaklari TEXT macrosu ile girmelidir
 
#ifdef UNICODE
#define TEXT() L##S
#else
#define TEXT(,) S
#endif
- Ayrica Standat C fonksiyonlarinin ascii ve unicode versiyonlari vardir. Bunlar arasinda otomatik gecis yapmak icin ozel makrolar kullanilmaktadir. Bu makrolar tchar.h dosyasi icerisinde.
 - Aslinda standartlara gore printf fonksiyonunun ascii ismi printf unicode ismi wprintf dir. Windowsta _tprintf der isek bu ide deki ayara gore wprintf veya printf kullanir.
 
HANDLE Kavramı
- Bir veri yapisina erismekte kullanilan anahtar degerlere handle denir.
 - Handle genel olarak bir veri yapisina erismekte kullanilan tekil anahtar degerdir. Handle tipik olarak bir adres formunda bulunabuilir. Bir dizide index belirtiyor olabilir.
 - Handle kullanan kisi onun ne anlam ifade ettigini bilmek zorunda degildir.
 - Bir handle sisteminde tipik olarak handle sistemini yaratan bir fonksiyon bulunur. Bunlar tipik olarak CreateXxxxx veya OpenXxxx olarak adlandirilir
 - Handle sistemini kullanan fonksiyonlar vardir. bunlara biz handle degerini veririz ve giris yaptiririz. Nihayet handle sistemini yok eden fonksiyonalr vardir. Bunlar CloseXxx veya DestroyXxxx olarak adlandirilir.