《指標的藝術》讀書筆記

來源:互聯網
上載者:User
 

 

  希望您能把指標看似天上最燦爛的星星(*)
 

網盤下載:微盤檔案格式:Xmind 製作軟體:Xmind Pro 指標的內涵
    指標變數用於儲存變數地址。由於我們使用*作用於指標變數,所以作者喜歡把指標當成星星。  作者把指標比喻成鑰匙(信箱的鑰匙),而把變數值當成信件。 
數組的內涵   數組名稱表示數組第一個元素的地址。  由於陣列變數儲存第一個元素的地址,所以陣列變數也是一個指標變數。但是不同的是,不能對陣列變數進行自增(++)或自減(--)運算,所以我們管陣列變數叫做 指標常量。 指標操作符   我們可以使用[]或*取指標指向變數裡的值。  指標(*)和數組([])是互連的。 字串常用操作>   字串長度:strlen(str1);  字串複製:strcpy(str1接收者, str2給予者)        strncpy(str1接收者, str2給予者, n複製個數)  字串串連:strcat(dest被串連者, source串連者)        strncat(dest, source,n)  字串比較:strcmp(str1, str2)        str1 == str2 地址比較,用於判斷str1和str2是否指向同一個變數。 結構體    通過指標訪問成員使用->或(*).
 結構體是派生的資料類型。結構體是由相同或不同資料類型組成的集合體。
 常用代碼   定義結構體    
typedef struct _student{    char name[10];    int score;} student;

分配記憶體

student *ptr = (student *) malloc ( sizeof(student) );

 

檔案操作

int main(){    char id[10];    FILE *fptr;    if((fptr = fopen("test.dat", "a+")) == NULL){        printf("無法開啟test.dat");        return 1;    }       do{         printf("請輸入id\n");        scanf("%s", id);        fprintf(fptr, "%s\n", id);    }while(strcmp(id, "-1") != 0);     fclose(fptr);    return 0;}

 

書中錯誤

1、書中第一篇第4節(11頁)是這樣描述結構體的(見)。——實際上結構體是相同或不同資料類型組成的。

2、(12頁)是不是我理解上的錯誤,從這句話我誤認為結構體成員在記憶體中是相鄰的。——但實際上不是。

3、53頁(命令列自變數篇),這個明顯表示不同的意思,怎麼就歸納到一起了?

 

   推薦    

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.