//位址
1,計算機中的記憶體是以位元組為單位的儲存空間,
記憶體的每乙個位元組都有乙個唯一的編號,稱為位址。
凡是存放在記憶體中的程式和資料都有乙個位址,
也就是說,乙個函式也有自己的記憶體位址。
2,當定義乙個變數時,系統就分配乙個帶有唯一位址的儲存單元來儲存這個變數。
char a = 'a';//a的ascii值為65
int b = 66;
變數儲存單元的第乙個位元組的位址就是該變數的位址。
記憶體中儲存的都是二進位制資料。
3,除錯過程中,我們採用列印的方式檢視變數的位址;
int c = 10;
printf("16進製制:%x\n",&c);
printf("10進製:%d",&c);
//一,一維陣列
1,定義
形式:型別 陣列名[元素個數]
int a[5];
裡面的個必須是乙個固定值,可以是常量,常量表示式。
絕對不能使用變數,或者變數表示式來表示元素個數
大多情況下不要省略元素個數,
/當陣列作為函式的形參和陣列初始化時除外。
2,一維陣列的儲存
定義陣列時系統將按照陣列型別和個數分配一段連續的儲存空間來儲存陣列元素。
陣列名代表著整個陣列的位址,也就是陣列的起始位址。
a==&a[0]
即第乙個元素的位址就是整個陣列的位址
3,一維陣列的初始化
初始化的一般形式:型別 陣列名[元素個數]=;
int a[2] = ;
相當於int a[2];
a[0] = 8;
a[1] = 10;
/c語言中編譯器是不會對陣列下標越界進行檢查的,
所以自己訪問陣列時要小心
元素值列表可以是陣列元素的初值,也可以是前面部分元素的初值
int a[4] = ;
當陣列為整數時,初始化未確定的元素,預設為0,
當對全部陣列元素都賦初值時,可以省略元素個數
int a = ;//說明陣列a的元素個數是三
陣列初始化時的賦值方式只能用於陣列的定義,
定義之後只能乙個元素乙個元素地賦值。
4,一維陣列與函式引數
一維陣列的元素作為函式實參,與同型別的簡單變數作為實參一樣,
是單向的值傳遞。
即 陣列元素的值傳給形參,形參的改變不影響實參
voide test(int b)//b是test函式的形參
int main()
陣列名代表著整個陣列的位址,
如果一維陣列的陣列名作為函式實參,傳遞的是整個陣列,
即 形引數組和實參陣列完全相同,是存放在同一儲存空間同一陣列。
這樣形引數組修改時,實參陣列也同時被修改了。
形引數組的元素可以省略。
void test(int b)//b是test函式的形參
int main()
//二維陣列
1, 定義
定義形式: 型別 陣列名[行數][列數]
int a[2][3];//共2行三列,6個元素
2,二維陣列的儲存
c語言將二維陣列當作是一維陣列的集合,
即二維陣列是乙個特殊的一維陣列;他的元素是一維陣列。
eg;int a[2][3]可以看作是由一維陣列a[0]和一維陣列a[1]組成。
二維陣列的存放順序是按行存放的,
先存放第一行的元素,再存放第二行的元素。
陣列a[0]的位址和元素a[0][0]的位址相同,
即 a[0] = &a[0][0]
結論a=a[0]=&a[0][0]
類推 a[1]=&a[1][0]
3.二維陣列的初始化
.按行進行初始化
int a[2][3] = ,};
.按儲存順序進行初始化(先存放第一行,再存放第二行)
int a[2][3] = ;
.對部分元素進行初始化
int a[2][3] = ,};
int b[3][3] = ,,};
如果只初始化了部分元素,可以省略行數,但是不可以省略列數
int a[3] = ;
int a[3] = ,,{}};
C語言 第十三章
1.與檔案進行通訊 檔案是什麼?檔案通常是在磁碟或固態硬碟上的一段已命名的儲存區。c把檔案看作一系列的連續的位元組,每個位元組都能被單獨讀取。2.標準i o fopen 函式 fclose 函式 getc 函式 從標準輸入中獲取乙個字元 char ch file fp fp fopen yls.tx...
譚浩強C 第十三章
1 cerr標準錯誤流使用 p408 include include using namespace std intmain else else return0 2 按照格式輸出 p410 使用流成員函式控制輸出格式 include using namespace std intmain retur...
第十三章 基礎資料
資料的及時性 準確性和完整性是企業資訊化管理對資料的3項基本要求。及時 必須在規定的時間內進行和完成資料的採集和處理,資料的價值是有時間性的,過時的資訊不僅沒有價值,還可能造成誤導。準確 就是必須去偽存真 符合實際。完整 滿足系統對各個資料項的規定的要求,沒有任何疏忽和遺漏。保證資料準確的措施 企業...