Tài liệu miễn phí phục vụ học tập nghiên cứu
Tìm nhiều : Tiếng anh, Photoshop , Lập trình

Lập trình C nâng cao

  • Loại tài liệu : .pdf
  • Dung lượng:1.72 M
  • Lần download: 19 lần
  • Chi phí: Miễn phí, download free
MINH HỌA
  • Lập trình C nâng cao
  • Lập trình C nâng cao
  • Lập trình C nâng cao
  • Lập trình C nâng cao
  • Lập trình C nâng cao

Lập trình C nâng cao

Loại tài liệu : .pdf Dung lượng:1.72 M Lần download: 19 lần Chi phí: Miễn phí, download free

TVMP mang đến bạn đọc thư viện Lập trình C nâng cao : 1 PhÇn một : turbo c n©ng cao vµ c++ Ch−¬ng một : BiÕn con trá §1, nói thêm Kh¸i niÖm chung Mét con trá lµ mét biÕn chøa ®Þa chØ cña mét biÕn kh¸c, bên cạnh đó NÕu mét biÕn chøa ®Þa chØ cña mét biÕn kh¸c tth× ta nãi biÕn thø nhÊt trá ®Õn biÕn thø 2 , kế tiếp là Còng nh− mäi biÕn kh¸c, biÕn con trá còng ph¶i ®−îc khai b¸o tr−íc khi dïng, ngoài ra D¹ng tæng qu¸t ®Ó khai b¸o mét biÕn con trá lµ : type * Trong ®ã : type lµ bÊt k× kiÓu d÷ liÖu c¬ b¶n thÝch hîp nµo ®−îc chÊp nhËn trong C vµ lµ tªn cña mét biÕn con trá, ý nữa KiÓu d÷ liÖu c¬ b¶n x¸c ®Þnh kiÓu cña nh÷ng biÕn mµ con trá cã thÓ chØ ®Õn, nói thêm là VÝ dô khai b¸o biÕn con trá chØ ®Õn c¸c biÕn ngu

Gồm 14 chương về các vấn đề nâng cao trong lập trình C như: con trỏ, bàm phím, cursor, truy xuất bộ nhớ, đồ họa, các bài toán vi phân, nội suy, hàm số ,.....

Tải tài liệu Lập trình C nâng cao miễn phí ,tại Thư viện tài liệu miễn phí www.thuvienmienphi.com bạn có thể tải nhiều tài liệu, thư viện hoàn toàn miễn phí,bạn có thể chia sẽ tài liệu Lập trình C nâng cao của bạn cho mọi người cùng nghiên cứu học tập tại đây .DOC: là dạng tài liệu đọc bằng thư viện Microsoft Office,PDF là dạng file đọc bằng phần mềm Adobe - Adobe Reader Một số tài liệu tải về mất font không xem được thì do máy tính bạn không hỗ trợ font củ, bạn tải font các font vntime củ về cài sẽ xem được.

PhÇn 1 : turbo c n©ng cao c++
Ch¬ng 1 : BiÕn con trá
§1. Kh¸i niÖm chung
Mét con trá lµ mét biÕn chøa ®Þa chØ cña mét biÕn kh¸c. NÕu mét biÕn chøa ®Þa chØ
cña mét biÕn kh¸c tth× ta nãi biÕn thø nhÊt trá ®Õn biÕn thø hai .
Còng nhmäi biÕn kh¸c, biÕn con trá còng ph¶i ®îc khai b¸o tríc khi dïng. D¹ng
tæng qu¸t ®Ó khai b¸o mét biÕn con trá lµ :
type *
Trong ®ã : type lµ bÊt k× kiÓu d÷ liÖu c¬ b¶n thÝch hîp nµo ®îc chÊp nhËn trong C vµ
biÕn> lµ tªn cña mét biÕn con trá. KiÓu d÷ liÖu c¬ b¶n x¸c ®Þnh kiÓu cña nh÷ng biÕn mµ con
trá cã thÓ chØ ®Õn. VÝ dô khai b¸o biÕn con trá chØ ®Õn c¸c biÕn nguyªn vµ biÕn kiÓu kÝ tù:
char *p;
int *x,*y;
Con trá cã mét trÞ ®Æc biÖt gäi lµ NULL. TrÞ nµy cã nghÜa lµ con trá cha trá tíi mét ®Þa chØ
hîp lÖ nµo c¶. §Ó dïng ®îc trÞ nµy chóng ta ph¶i dïng #include ®Çu ch¬ng
tr×nh
§2. C¸c phÐp to¸n con trá
C cã hai phÐp to¸n ®Æc biÖt ®èi víi con trá : * vµ & . PhÐp to¸n & lµ phÐp to¸n tr¶ vÒ
®Þa chØ trong bé nhí cña biÕn sau nã. VÝ dô :
p = &a;
sÏ ®Æt vµo biÕn p ®Þa chØ trong bé nhí cña biÕn a. §Þa chØ nµy kh«ng cã liªn quan g× ®Õn trÞ
sè cña biÕn a. Nãi c¸ch kh¸c ®Þa chØ cña biÕn a kh«ng liªn quan g× ®Õn néi dung cña biÕn a.
PhÐp to¸n * lµ phÐp to¸n tr¶ vÒ trÞ cña biÕn ®Æt t¹i ®Þa chØ ®îc m« t¶ bëi biÕn ®i sau
nã. VÝ dô nÕu biÕn a chøa ®Þa chØ cña biÕn b th×
p = *a
sÏ ®Æt trÞ sè cña biÕn b vµo biÕn p
Ch¬ng tr×nh 1-1 : LËp ch¬ng tr×nh in sè 100 lªn mµn h×nh
main()
{
int *p,a,b;
clrscr();
a=100;
p=&a;
b=*p;
printf("%d",b);
getch();
}
§3. TÇm quan träng cña liÖu khi khai b¸o con trá
1
CÇn ph¶i b¶o ®¶m lµ con trá lu«n lu«n trá ®Õn mét kiÓu d÷ liÖu phï hîp. VÝ dô khi
khai b¸o con trá kiÓu int , tr×nh biªn dÞch sÏ hiÓu lµ con trá bao giê còng chØ ®Õn mét biÕn
cã ®é dµi lµ 2 byte .
Ta xÐt mét ch¬ng tr×nh nhsau
Ch¬ng tr×nh 1-2
main()
{
float x=10.1,y;
int *p;
clrscr();
p=&x;
y=*p;
printf("%f",y);
getch();
}
Ch¬ng tr×nh nµy nh»m g¸n trÞ cña x cho biÕn y vµ in ra trÞ ®ã. Khi biªn dÞch ch¬ng
tr×nh kh«ng b¸o lçi mµ chØ nh¾c nhë :
Suspencious pointer conversion in function main
Tuy nhiªn ch¬ng tr×nh kh«ng g¸n trÞ x cho y ®îc. LÝ do lµ ta khai b¸o mét con trá
int vµ cho nã trá tíi biÕn float x. NhvËy tr×nh biªn dÞch sÏ chØ chuyÓn 2 byte th«ng tin cho
y chø kh«ng ph¶i 4 byte ®Ó t¹o ra mét sè d¹ng float .
§4. C¸c biÓu thøc con trá
1. C¸c phÐp g¸n con trá : Còng gièng nhbÊt k× mét biÕn nµo kh¸c , ta cã thÓ dïng mét
con trá ë vÒ ph¶i cña mét phÐp g¸n ®Ó g¸n trÞ cña mét con trá cho mét con trá kh¸c. VÝ dô ta
viÕt
Ch¬ng tr×nh 1-3 :
main()
{
int x;
int *p1,*p2;
clrscr();
p1 = &x;
p2 = p1;
printf(“ %p”,p2);
getch();
}
Ch¬ng tr×nh nµy hiÖn lªn ®Þa chØ cña biÕn x ë d¹ng hex b»ng c¸ch dïng mét m· ®Þnh
d¹ng kh¸c cña hµm printf() . %p m« t¶ r»ng sÏ hiÖn lªn mét trÞ chøa trong mét biÕn con trá
theo d¹ng reg:xxxx víi reg lµ tªn cña mét trong c¸c thanh ghi segment cña CPU cßn xxxx lµ
®Þa chØ offset tÝnh tõ ®Çu segment .
2. C¸c phÐp to¸n häc cña con trá : Trong C , ta chØ cã thÓ dïng hai phÐp to¸n sè häc t¸c
®éng lªn con trá lµ phÐp + vµ - . §Ó hiÓu ®îc c¸i g× sÏ x¶y ra khi thùc hiÖn mét phÐp to¸n
sè häc lªn con trá ta gi¶ sö p1 lµ mét con trá chØ ®Õn mét sè nguyªn cã ®Þa chØ lµ 2000 . Sau
khi thùc hiÖn biÓu thøc
2
p1++ ;
con trá sÏ chØ ®Õn sè nguyªn n»m ë ®Þa chØ 2002 v× mçi khi t¨ng con trá lªn 1 nã sÏ chØ ®Õn
sè nguyªn kÕ tiÕp mµ mçi sè nguyªn l¹i cã ®é dµi 2 byte . §iÒu nµy còng ®óng khi gi¶m . VÝ
dô :
p1-- ;
sÏ trá tíi sè nguyªn ë ®Þa chØ 1998 . NhvËy mçi khi con trá t¨ng lªn 1 , nã sÏ chØ ®Õn d÷
liÖu kÕ tiÕp t¹i ®Þa chØ nµo ®ã tuú theo ®é dµi cña kiÓu d÷ liÖu. C cßn cho phÐp céng hay trõ
mét sè nguyªn víi mét con trá . BiÓu thøc :
p1 = p1 + 9;
sÏ lµm cho con trá chØ tíi phÇn tö thø 9 cã kiÓu lµ kiÓu mµ p1 trá tíi vµ n»m sau ph©n tö hiÖn
thêi nã ®ang trá ®Õn . Ngoµi c¸c phÐp to¸n trªn , con trá kh«ng chÊp nhËn mét phÐp to¸n nµo
kh¸c .
3. So s¸nh c¸c con trá : Chóng ta cã thÓ so s¸nh 2 con trá trong mét biÓu thøc quan hÖ . VÝ
dô cho hai p vµ q , ph¸t biÓu sau ®©y lµ hîp lÖ :
if (p
printf(“p tro den mot vi tri bo nho thap hon q\n”);
Tuy nhiªn cÇn nhí r»ng phÐp to¸n trªn lµ so s¸nh hai ®Þa chØ chøa trong p vµ q chø kh«ng
ph¶i néi dung cña hai biÕn mµ p vµ q trá tíi .
4. C¸c viÖc dïng con trá :
Ch¬ng tr×nh
main()
{
int i,j,*p;
1-4 :
Ph©n tÝch ch¬ng tr×nh sau :
i=5;
p=&i;
j=*p;
*p=j+2;
}
Trong ch¬ng tr×nh trªn ta khai b¸o hai biÕn nguyªn lµ i vµ j vµ mét biÕn con trá p trá
tíi mét sè nguyªn . Ch¬ng tr×nh sÏ ph©n phèi bé nhí cho 3 biÕn nµy vÝ dô t¹i c¸c ®Þa chØ
100 , 102 vµ 104 v× mçi sè nguyªn dµi 2 byte vµ con trá mÆc nhiªn còng ®îc m· ho¸ b»ng
2 byte .
100
i
102
j
104
p
lÖnh i=5 cho trÞ sè cña biÕn i lµ 5
100
5
i
102
j
104
p
lÖnh p= &i lµm cho con trá chØ tíi biÕn i nghÜa lµ con trá p chøa ®Þa chØ cña biÕn i . B©y giê
p chØ ®Õn biÕn i .
100
5
i
102
j
104
100
p
3

DOWNLOAD TÀI LIỆU
Bấm nút LIKE +1 để cảm ơn
  
     
SAU ĐÓ BẤM
Download miễn phí

HỎI ĐÁP LIÊN QUAN

Tài liệu tương tự

Nội quy


website trong giai đoạn phát triển và hoạt động thử nghiệm, tài liệu đăng tải được sưu tầm trên internet tu cac website nhu tailieu.vn, 123doc...nham muc dich chia se kien thuc hoc tap, nếu tai lieu nao thuộc bản quyền hoặc phi phạm pháp luật chúng tôi sẽ gở bỏ theo yêu cầu Tài liệu học tập miễn phí