linux學習第五天
一 記憶體
1. 程式中如何操作記憶體,用一個符號來代表某一段記憶體,那對這個符號的操作就是對這一段記憶體的操作。其中符號和記憶體空間我們叫做變數,符號和空間都是變數的一部分符號叫做變數名,空間叫做變數空間。
2. 與人類做類比
人本身 記憶體空間
人名 變數名
身份證 變數編號(地址)(變數所在空間第一個位元組的編號地址)
性別 變數型別:決定了能存什麼樣的資料
變數的四個部分:空間,變數名,變數地址,變數型別
3. 變數名的命名規則:在c語言中變數名屬於識別符號的一種,識別符號的命名規則
(1)、只能以字母,數字,下劃線組成
(2)、不能以數字開頭
(3)、不能使用c語言關鍵字(共32個,例如:include)
4 變數的型別
(1)、有符號數兩個位元組範圍:-32768----->32767
(2)、無符號數兩個位元組範圍:0------>65535
存數字10需要一個位元組,存數字10000需要兩個位元組。
存不同的數需要的記憶體空間大小是不同的
5 c語言根據變數佔據的記憶體大小不同和儲存資料型別不同,劃分不同的變數型別
(1)、有符號的:char short int long long long float double
(2)、在整形資料前面加unsigned
(3)、C語言用sizeof來測量變數型別的長度。sizeof是C語言一個關鍵字
#include <stdio.h>
int main()
{
printf ("sizeof char = %lu\n",sizeof(char));
printf ("sizeof short = %lu\n",sizeof(short));
printf ("sizeof int = %lu\n",sizeof(int));
printf ("sizeof long = %lu\n",sizeof(long));
printf ("sizeof long long = %lu\n",sizeof(long long));
printf ("sizeof float = %lu\n",sizeof(float));
printf ("sizeof double = %lu\n",sizeof(double));
return 0;
}
整型資料:char<=short<=long<=long long
6. 浮點型資料
(1)、float 有效位數6--7位,一6位為例,123456789有效的資料是123456,789是不確定資料。
(2)、double 有效位數是15---16位
二 字元
1、 記憶體中都是二進位制資料,如何存字元,視屏,聲音,圖片,漢字?
編碼:把要存的內容轉換成數字存入到記憶體,用的時候從記憶體中取得是數字,然後將數字轉換成相應的內容使用。
2、 C語言的使用
(1)、使用單引號''括起來的單個字元,比如'a','!','@'.......
(2)、使用雙引號" "括起來的內容叫字串,比如"a".........
(3)、將字元‘a’存入到記憶體,用數字97來表示字元'a'
存:‘a’轉換成97存入到記憶體。
讀:讀出的內容97,將97轉換成‘a’使用
3、ascll碼,能代表256個字元,128有效。
三 變數的使用
1. 定義變數: int a float f char c
變數的初始化:定義變數的同時給變數賦一個初始值: int a=10
變數宣告:只給變數取名字,沒有給變數分配空間。
初始化:只在變數第一次被建立是使用才會發生。
2. 列印變數的地址
以16進位制列印變數的地址%p,取變數的地址&
printf("&a = %p\n",&a); 列印地址
四. 常量
1 八進位制是以0開頭的的數字
十六進位制是以0x開頭的數字
特殊字元用\來轉義
%s用於字串的輸出
2 定義符號常量
#define 識別符號 符號常量