CLI: command line interface clang: c language: c dili tercümanı, yorumlayıcısı, interpreter clang hello.c => a.out şeklinde bir dosyaya dönüştürür. a.out:assembly output. clang -o hello hello.c => hello.c dosyasını hello adındaki çalıştırılabilri dosyaya dönüştürür. eğer 3. parti kütüphane varsa l library ve dosya adı en sona eklenir. clang -o hello hello.c -lcs50 => cs50 librarysini de ekleyerek dönüştür. make hello.c => hello çalıştırılabilir dosyasına dönüştürür. fonksiyon mainin dışında, altına yazılırsa üstüne prototypei yazılır, yoksa yorumlanamaz, çalışmaz. preprocessing: # ile başlayan satırlara preprosessor directive denir. header dosyalarının include edilmesi gibi. include, program içindeki fonksiyonların prototypelarını alıp dosyanın baına ekler. compile kodu assembly diline çevirir. "subx %rtu, %yhb" gibi. assembling: ikili koda çevirir. "100010101" gibi. linking: include denilen dosyaları da ekleyerek bir büyük dosyaya dönüştürür. debug50 ./...