一、變數的本質
變數的本質是一段連續記憶體空間的別名,或者說變數是一段連續記憶體空間的門牌號,畫個圖:
不管是標準資料型別,還是指標(指標也是一種資料型別),都是一樣的,都是記憶體空間的門牌號,千萬不好把變數畫到記憶體中去。
二、通過變數往記憶體中進行讀寫資料
三、修改記憶體的方法
1、直接
int a = 10;
a = 20;
2、間接
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
typedef struct teacher teacher;
int main()
*((int*)1638148) =20;
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
typedef struct teacher teacher;
int main()
讓指標p指向a的首位址,然後利用p修改值,輸出結果同上。指標這種間接修改記憶體值的方式,編譯器會把它轉換成上面這種形式,也就是說編譯器本身就是這麼實現對記憶體的間接修改的。
*((int*)1638148) =20;
四、是否可以對記憶體空間取別名
這在c++中就是使用引用做到這一點的
五、變數的三要素:名稱,大小,作用域
C語言之變數屬性
1.c語言的變數屬性 c語言中的變數可以有自己的屬性 在定義變數的時候可以加上 屬性 關鍵字 屬性 關鍵字指明變數的特有意義 語法 property type var name 示例 2.auto關鍵字 auto即c語言中區域性變數的預設屬性 auto表明將被修飾的變數儲存於棧上 編譯器預設所有的區...
C語言之變數與常量
關於變數 常量 型別和運算子等。2.1 變數名 變數名由字母和數字組成,首字母必須是字母,下劃線 看作是字母,所以可以放在首字母。但是,盡量不用用下劃線作為首字母,因為在庫函式中經常這樣命名。變數名用小寫字母,符號常量用大寫字母。變數名字的選擇需要根據實際目的,區域性變數用短名,外部變數用長名。2....
C語言之變數基本使用
宣告變數 int num 賦值 num 60 使用 printf num d num 也可以一步到位 變數表示記憶體中的乙個儲存區域 不同的資料型別,占用的空間大小不一樣 該區域有自己的 名稱 和 型別 變數必須先宣告,後使用 該區域的資料可以在同一型別範圍內不斷變化 變數在同乙個作用域內不能重名 ...