Ch ng 4ươ
CÁC THÀNH PH N C B N Ơ
C A NGÔN NG L P TRÌNH C
http://slide-giaotrinh.tk
Lý thuy t ngôn ng l p trình ế
N i dung
T ng quan
B ch vi t ế
T khóa
Đ nh danh
Th vi n chu n C ư
Các hàm toán h c c b n trong C ơ
C u trúc m t ch ng trình C ươ
T ng quan
Cngôn ng l p tnh c p cao, đ c s d ng ượ
ph bi n đ l p trình h th ng và phát tri n các ế
ng d ng
Vào nh ng năm cu i th p k 60 đ u th p k 70
c a th k 20, Dennish Ritchie phát tri n ngôn ng ế
l p trình C d a tn ngôn ng BCPL và ngôn ng B
Ban đ u, C đ c thi t k nh m l p tnh trong môi ượ ế ế
tr ng c a h đi unh Unix nh m h tr cho ườ
c ng vi c l p tnh ph c t p.
Nh ng v sau, v i nh ng nhu c u phát tri n ny ư
m t tăng c a công vi c l p tnh, C đã v t qua ượ
khuôn kh c a png t nghi m Bell và nhanh
chóng h i nh p vào th gi i l p trình ế
T ng quan
Cngôn ng l p tnh h th ng r t m nh và
“m m d o
C có m t th vi n g m r t nhi u các hàm đã đ c ư ượ
t o s n, ng i l p trình th t n d ng các hàm ườ
này đ gi i quy t cáci tn mà kng c n ph i ế
t o m i.
C h tr r t nhi u pp toán nên p h p cho vi c
gi i quy t cáci toán k thu t có nhi u công ế
th c ph c t p.
C cũng cho phép ng i l p tnh t đ nh nga ườ
thêmc ki u d li u tr u t ng khác. ượ
C đ c ph bi n khá r ng rãi đã tr thành m t ượ ế
ng c l p trình khá m nh, đ c trong vi c xây ư
d ng nh ng ph n m m hi n nay.
T ng quan
Ngôn ng C có nh ng đ c đi m c b n sau: ơ
Tính cô đ ng (compact): C ch có 32 t khóa chu n và 40
toán t chu n, nh ng h u h t đ u đ c bi u di n b ng ư ế ượ
nh ng chu i ký t ng n g n
Tính c u trúc (structured): C có m t t p h p nh ng ch th
c a l p trình nh c u trúc l a ch n, l p… ư
Tính t ng thích (compatible): d dàng chuy n t máy ươ
tính này sang máy tính khác
Tính linh đ ng (flexible): C là m t ngôn ng r t uy n
chuy n v cú pháp, ch p nh n nhi u cách th hi n, có
th thu g n kích th c c a các mã l nh làm ch ng trình ướ ươ
ch y nhanh h n. ơ
Biên d ch (compile): C cho phép biên d ch nhi u t p tin
ch ng trình riêng r thành các t p tin đ i t ng (object) ươ ượ
và liên k t (link) các đ i t ng đó l i v i nhau thành m t ế ượ
ch ng trình có th th c thi đ c (executable) th ng nh t ươ ượ