作爲絕大多數人入門的編程語言C語言,同時又是編程語言榜前三的常青樹,無論學到什麼水平的人都不敢說自己是完全精通吧, 雖然之前已經學了兩遍,但是寒假回來又自己學了一遍,還是有原來沒有的收穫,所以呢,廢話不多說,開始和大家分享。
一,首先是原碼,反碼,補碼的問題:
1.正數的原碼也就是反碼也就是補碼(所謂的三位一體),很簡單,沒什麼需要特別說明的。
2.負數的反碼是原碼符號位不動,其他位按位取反,負數的補碼是反碼加1。
例:6 0000 0110 原碼 反碼 補碼
17 0001 0001 原碼 反碼 補碼
-23 1001 0111 原碼
1110 1000 反碼
1110 1001 補碼
-15 1000 1111 原碼
1111 0000 反碼
1111 0001 補碼
二,標識符由數字字母下劃線組成,由字母開頭,(下劃線可以當成字母)雖然我也不太明白,但是C語言中,確實可以把下劃線當做字母來用。
三,一個字節是八個二進制位。
1024個字節是1k
1024k = 1兆
1024兆 = 1t
1024t = ..等於啥我也不知道,一般單位到t在先使用就夠用了
四,內存不看怎麼存,只看怎麼讀!計算機只識別0和1。
五,強制跳轉語句
例:#include<stdio.h>
int main(void)
{
printf("1\n");
ABC://標號
printf("2\n");
printf("3\n");
printf("4\n");
goto ABC;//改變程序的運行順序,跳轉到標號的位置繼續執行
printf("5\n");
return 0;
}
強制跳轉語句的優點:語法簡單,讓人們更容易理解該語法的用法
強制跳轉語句的缺點:是的程序的可讀性變差,讓程序更沒有邏輯性,但是卻又非常好用。
即便不知道強制跳轉語句的用法,使用判斷循環也可以達到相同的效果, 但作爲一個非常好用的語法,以及作爲一個大牛程序員的驕傲,會這樣一個語法也是不錯的吧~
六,const 語法
const在C語言中的作用只有一個,就是安全性的考慮,const語法本質上分兩種,如果細分還可以分三種
例:1,const char *p = &a;
把它的名字叫做星前const,不能通過*p改變所指變量的值,但是卻可以改變指針p的指向
2,char * const p = &a;
把它的名字叫做星後const,不能改變指針的指向,但是能改變指針所指的值
3,const char * const p = &a;
無非是前兩種的結合,一顆指針指向一個變量,值不能改變,指針指向也不能改變。
當然了,如果想強行改變的話,也是可以的,但是在該加的地方加上const能夠說明開發人員的思維更嚴謹!
七,二維數組作爲函數參數
#include<stdio.h>
void func(int (*p)[4])
{
return;
}
int main(void)
{
int a[5][4];
func(a);
return 0;
}
沒什麼具體說明的了,自己認爲代碼已經說明了一切~
先寫這些吧,留點消化的時間,一會兒再開始C語言第二篇,本來感覺C語言沒什麼好說的了,但是每看一回都自覺不自覺的會有新的收穫。想起那句老話:學到老,活到老~~。