重新回顧那些數值類型(int、short、long、float、double)、字符類型(char)、構造類型(數組、結構體struct、共用體union、枚舉類型enum)、指針類型、空類型(viod)、定義類型(typedef)等,很多都忘記了。。。
在linux下,各類型所佔的字節數與一般C下有點區別。對於各類型所佔字節數,在linux虛擬機下,通過sizeof很容易查看(int4字節、char1字節、short2字節,)。
在一個變量初始化的時候,要明白什麼是申明和定義,如,int i和extern int i。兩者主要區別在於申明不分配內存,該形參或變量已存在,可以直接調用,而定義一個變量要分配內存。
同時,還課上講到了一個重要知識點,內存空洞。簡單地講,在linux下,內存空洞就是數據向高字節數據對齊而空出的存儲單元。它在結構體中常出現。
結束了數據的一些基本類型介紹,開始了一些簡單編程。struct A結構體、strcat(字符串鏈接)、strlen(字符串長度)、strstr(字符串查找),對於我而言,編程中最長出現的問題就是“段錯誤”和“死循環”。在用指針進行編程時,最容易出現“段錯誤”。解決“段錯誤”的最好方法就是在每一個模塊後進行輸出排查(printf操作)。有時也會遇到數據類型不匹配等小問題。總之,在編程時,先要構思(框架的創建),然後確定編寫方法(內容的確定)。一切的基礎,要細心,要注意細節。。。。