1、使用聯合節省記憶體資源
a、不使用聯合
struct empdates
last_day;
};
儲存結構如下表示:
int days_works
int month
int day
int year
b、使用聯合
union empdates
last_day;
};
使用聯合之後的儲存結構:
int month or int days_works
int day
int year
2、使用regs—一種典型的聯合
struct woedregs
;struct byteregs
;union regs
;
具體使用:
union regs intregs;
intregs.h.ah = 0x30;
intregs.h.ah = 0;
printf("%d.%d/n",intregs.h.ah,intregs.h.al);
當程式訪問某個通用暫存器(axbx cx dx),pc允許以16位(字)的格式引用暫存器。但是,使用者也可以用暫存器的高位元組和低位元組應用暫存器(al,ah,bl,bh,cl,ch,dl,dh)。因為這兩種方法都可以應用同乙個暫存器,所以可以使用兩種方法訪問同一儲存位址,從而進一步節省個記憶體的空間。
3、在陣列中查詢指定的值
#define arry_size 8
int found = 0;
int i = 0;
int arry[arry_size] = ;
while((i < arry_size) && (!found))
if(arry[i] == 7)
found= true;
else
i++;
if(i < arry_size)
printf("the number is found/n");
else
printf("the number is not found!/n");
C語言學習筆記 陣列指標域指標陣列
一 指標陣列和陣列指標的記憶體布局 初學者總是分不出指標陣列與陣列指標的區別。其實很好理解 指標陣列 首先它是乙個陣列,陣列的元素都是指標,陣列佔多少個位元組由陣列本身決定。它是 儲存指標的陣列 的簡稱。陣列指標 首先它是乙個指標,它指向乙個陣列。在32 位系統下永遠是佔 4 個位元組,至於它指向的...
C語言學習筆記 陣列引數和指標引數
1 c 語言中只會以值拷貝的方式傳遞引數,當向函式傳遞陣列時,將整個陣列拷貝乙份傳入函式導致執行效率低下,c 語言以高效作是最初的設計目標,所以這種方法是不可取的。2 引數位於棧上,太大的陣列拷貝將導致棧溢位。3 將陣列名看做常量指標,傳遞的是陣列的首元素位址,而不是整個陣列。1 二維陣列引數同樣存...
C語言學習筆記《陣列》
1,已知陣列x有5個元素,精組y有6個元素.請分別對x和y排序。輸出x和y排序後的元素 include main y 6 int i,j,sum 0 for i 0 i 4 i int i,j,sum for i 0 i 9 i for i 0 i 9 i printf d t a i code c...