比較難歸類,就單獨列舉在這裡
無型別識別符號,只能宣告函式的返回型別,不能宣告變數,可以宣告指標
int a;
a=55;
&a——代表a的位址
*&a——代表*(位址)——就為位址對應的值,就是55
先來看看整數儲存的例子
#include#includeusing namespace std;
#define print_int(n) printf(#n "= 0x%p\n" ,&n)
int main()
執行結果為:
可以看出,變數分配位址以 a,b,c,i 降序分配,且他們是連續的
如果**改一下:
雖然char 只占用了乙個位元組,但是由於位元組對齊,下乙個int型也是從38開始(相當於char佔了 c)
給定乙個數n,n除以從2到sqrt(n)之間的每乙個數,只要有乙個餘數為0,n就不是素數
bool is_prime(int n)
for(divisor = 2;divisor*divisor<=n;divisor++)
}return true;
}
當形式引數是一維陣列時,可以不說明陣列長度
int fun(int a)
#define len 100
int main(void)
二維陣列,必須給出列的數量
int fun(int a[len])
%d——列印十進位制 %g——列印浮點數%o——列印八進位制 %c——列印乙個字元%x——列印十六進製制 %s——列印乙個字串%d——讀取整型值int %ld——讀取長整型值 long%f——讀取浮點數float %lf——讀取雙精度長整型值double
%c——讀取乙個字元 %s——讀取乙個字串
if(3==i);
而不是if(i==3);
因為寫成if(i=3);時不會報錯,但是if(3=i);一定會報錯。
這個小點最開始是,華為海思物理層的李雲東師兄告訴我的,感謝李師兄
無論在什麼時候,如果遇見了這樣一條語句malloc(strlen(str));,幾乎可以斷定它是錯誤的,而malloc(strlen(str)+1)才是正確的。這是因為其他的字串處理庫函式幾乎都包含乙個額外空間,用於容納字串結尾的『\0』字元。
主函式內:
initialize_number_generator();
int a = rand() % 100 +1;
生成1~100的隨機數
C語言知識點小總結
定義和宣告的最大區別在於 定義建立了變數 物件 並為這個物件分配了記憶體。宣告 只是告訴編譯器這個變數名被提前預定了 register要求編譯器盡可能的將變數放在cpu內部暫存器中,而不會是通過記憶體定址訪問以提高效率。break可以跳出所有迴圈 do while while for 迴圈語句的主要...
c 小知識點
1 陣列間拷貝只能使用for迴圈乙個乙個拷貝,但是vector之間可以直接用乙個vector初始化另乙個vector。int main 2 vector 之間比較大小直接用 3 對於實參型別相同,並且數目不確定的情況下我們可以傳遞名為initializer list的標準庫型別。int func s...
C 小知識點
1.在c 中,每個程式必須包含乙個main 的入口函式,只有這樣,這個專案才能執行.2.函式包括 函式名,引數,返回值.3.return 是c 的預定義語句,提供了終止函式的一種方法 return 0表示成功執行正常退出.4.using namespace std 是指引用c 的標準庫.5.c 的4...