1. 傳入函式的數組成了什麼?
函式引數表中的陣列實際上是指標,
sizeof(a) == sizeof(int*),
可以用陣列運算子來進行計算,
以下四種函式原型等價。
int sum(int *arr, int n);
int sum(int *, int);
int sum(int arr, int n);
int sum(int , int);
#include using namespace std;
void minmax(int *a, int len, int *max, int *min);
int main();
int min,max;
minmax(a, sizeof(a)/sizeof(a[0]), &min,&max);
cout << "main a = " << a << endl;
cout<< "main sizeof(a)=" << sizeof(a)<< ", sizeof(a[0]) = "輸出結果:
2. 陣列 a和指標p的關係
指標是長度為1的陣列,*p = p[0];
陣列是常量指標,*a = a[0], int a <==> int *const p;
3. 指標是const
int * const p = &i; //一旦指向乙個變數的位址,不能再指向其他變數
*p = 26; //ok
p++;//wrong
4. 所指是const
int const *p = &i;//不能通過該指標去修改該變數,但i不是const
*p = 26;//wrong
i = 26;//ok 因為i不是const
p = &j; // ok
翁愷 程式設計高階C語言筆記 結構型別
結構型別 列舉 列舉是使用者定義的資料型別,用來表示依此排列的常量 常量型別只能是 int,常量大小是從0到n 列舉型別裡的名字通常不是真的使用,要使用的是大括號裡的常量名字。定義列舉的意義就是給這些常量定義一些名字 enum colors red 0.voidf enum color c int ...
翁愷C語言程式設計 學習筆記5
變換看待方式,還有unsigned 在計算機內部,一串字元在現實中表示什麼取決於用什麼樣的方式去看待它,比如 d與 u同樣輸出同乙個位串,會不一樣。字面量,是在編譯器編寫介面裡的內容,可以有比如012表示8進製,編譯器會自動將其轉成10進製,但是這是編譯器這個層面的事情,在計算機底層只有2進製。進製...
程式設計入門 C語言(翁愷老師)作業
第1周 程式設計與c語言1 輸出 hello world 5分 題目內容 請輸出一行,內容為 hello world 請注意大小寫。由於這一周只是簡單地介紹了c程式的基本框架,還不能做很多事情,甚至還不能做資料的輸入,所以這一周的題目也非常簡單。輸入格式 無輸入輸出格式 一行文字 輸入樣例 無輸出樣...