🔥個人主頁:艾莉絲努力練劍
?專欄傳送門:《C語言》、《數據結構與算法》、C語言刷題12天IO強訓、LeetCode代碼強化刷題
🍉學習方向:C/C++方向
??人生格言:為天地立心,為生民立命,為往圣繼絕學,為萬世開太平
前言:?我們在學習過程中會碰到很多很多問題,本系列文章不會博主不會額外再創建一個新的專欄來收錄,因為這一系列文章創作的初心主要是針對回顧知識點(遵循遺忘曲線并且根據自身的實際情況可以做出一些計劃,回顧知識點很重要)、緩解學習過程中的可能出現的焦慮等等。主包就不另外開一個專欄了,uu們可以把本系列的文章作為【C語言】專欄的后日談來看。
主包學習能力很一般,學起語言、算法來和大佬們完全無法比。主包正兒八經開始學C++是從今年的4月24號開始的,主包學習能力真的很一般,C語言這個基礎也不扎實,看主包文章的諸位一定是比主包要強的,但主包學習過程中碰到的麻煩、思考、和做的知識點回顧對大家還是有用的。
?
目錄
正文?
三、知識點回顧
(一)認識編譯器
?(二)文件后綴名
(三)C語言常見概念、數據類型以及變量的其它補充(雜談居多)?
1、main函數寫法
2、printf函數
3、占位符
4、一些術語
5、define
6、關鍵字(保留字)
7、ASCII碼表
8、字符串
9、轉義字符
(1)\0
(2)\ddd
(3)轉義字符
10、其它
11、strlen函數
結尾
正文?
三、知識點回顧
書接上文,我們本文正式開始知識點的回顧。
(一)認識編譯器
人機交流使用的是機器語言,
我們電腦上面可以安裝一些編譯器來寫代碼,比如說VS2022、XCode、CodeBlocks、DevC++、Clion、gcc、CMake、MSVC、Clang、VS2019、VS2013、VS2008、VS2010等編譯器。有uu們可能要問,那VSCode呢?哈哈哈哈,問得好。VSCode不是編譯器,VSCode是集成開發環境,簡稱“IDE”。我們可以在VSCode配置不同語言的開發環境,不建議新手用。
對于編譯器,博主比較推薦VS2022。VS2022使用方便,上手快。
像MSVC、gcc、XCode、VS2022、DevC++、Clang,算是比較常見的編譯器。
這幾個編譯器我們簡單介紹一下:
(1)MSVC:微軟開發的編譯器;
(2)Clang:蘋果開發的編譯器;
(3)XCode:蘋果電腦自帶的編譯器;
(4)gcc:沒想到吧,這位老熟人也是編譯器。
?(二)文件后綴名
.c源文件;.h頭文件;
.cpp(C plus plus)。
xxx.c——C程序的源文件;
xxx.cpp——C++程序的源文件。
(三)C語言常見概念、數據類型以及變量的其它補充(雜談居多)?
1、main函數寫法
一般寫法:
int main()
{return 0;
}
其他寫法:?
寫法(1):
void main()
1、這個是main函數的古老寫法。
2、void是無(空)的意思。
寫法(2):
int main(void)
?Void表示無(空),表示main函數無需參數。
寫法(3):
int main(int argc,char*argv[],char*envp[])
這種寫法就很復雜了。?
這里的int即整型(整數),意思就是main函數最終會返回一個整型的值。
2、printf函數
printf是庫函數——倉庫里有的能直接調用的函數。
單目操作符++、--的前置后置知識點總結,printf函數的一些知識點
注:庫函數使用要包含頭文件。
#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>int main()
{printf("%c\n", 'q');printf("%d\n", 123);printf("%f\n", 3.4);return 0;
}
" "括字符串,' 括一個字符。?
printf("%c\n", 'q');//%c表示打印字符
printf("%d\n", 123);//%d打印整數
printf("%f\n", 3.4);//%f打印小數,默認小數點后6位
?printf = print + format
? ? ? ? ? ? ?打印? ? ?格式
標準輸入輸出頭文件——<stdio.h>,我們拆開來看看:
std:standard(標準);i:input(輸入);o:output(輸出);h:head(頭文件)。
3、占位符
單目操作符++、--的前置后置知識點總結,printf函數的一些知識點
像%c、%d、%f這些就是占位符,在上面printf函數的代碼中,我們分別用q、123、3.4替換它。
4、一些術語
庫函數、編譯器廠商、標準庫,C Libarary(C語言庫)。
5、define
define——預處理指令。
6、關鍵字(保留字)
關鍵字也叫保留字,常用的有32個,保留給C使用。
注意:標識符創建時不能與關鍵字重復——避其名諱。
打個比方,Typedef就是一個關鍵字,作用是重新起名。
7、ASCII碼表
C語言常見概念、數據類型以及變量的一些重要知識點總結
我們用一個ch表示字符。
ASCII碼值:0 ~ 127;其中0~31位不可打印字符,無法在屏幕上觀察。
認識一下幾個進制的簡寫表示:
dec——十進制,0~9;
oct——八進制,0~7;
hex——十六進制,0~15。
A~Z:65~90;a~z:97~122。
大小寫ASCII碼值轉換:
記住A的ASCII碼值是65,a的ASCII碼值是97——
A -> a——65 + 32 -> 97。
?大小寫ASCII碼值差32。
大寫-->小寫—— +32;小寫-->大寫—— -32。
其他的一些ASCII碼值對應符號:
\n——10;
字符0~9——ASCII碼值對應為48~57;
'0'——字符0——ASCII碼值為48;
0——數字0——0。
8、字符串
"abcdef"//字符串
"abc"//字符串
"a"//字符串
" "//空字符串
我們打印字符串用的占位符是%s。?
9、轉義字符
(1)\0
char arr1[] = "abc";
char arr2[] = { 'a','b','c','\0' };
這里\0是字符串結束標志。?
C語言常見概念、數據類型以及變量的一些重要知識點總結
\0、\n都是字符——轉義字符;
我們做一個簡單的區分:/——除號;\——斜杠。
(2)\ddd
\ddd:1~3個八進制數字,比如\121;
(3)轉義字符
\'、\"、\?、\\、\0、\n、\t、\a、\b、\r等等都是轉義字符。
\a:警報;
\b:光標回退一格;
\?:新編譯器無法驗;
\\:反斜杠;
\0:\0是字符串結束標志,也是轉義字符;
\r:光標回到同一行行首;
\t——tab對齊(按4/8的倍數對齊)
10、其它
(1)*.exe所有.exe文件;
.gitignore忽略了不想要的文件。
(2)棧區、堆區、靜態區;
(3)變量有局部變量,也有全局變量。?
11、strlen函數
sizeof計算數組元素個數、strlen函數相關的一些知識點以及兩者的區別
strlen——string length——統計字符串長度。
#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>int main()
{int len = strlen("abcdef");return 0;
}
?這里字符串長度為6,\0不統計,strlen函數只統計結束標志(\0)之前的字符。
結尾
往期回顧:
【C語言】學習過程教訓與經驗雜談:思想準備、知識回顧(一)
結語:本篇文章內容回顧到這里就結束了,希望對大家伙有所幫助。如果大家覺得文章有幫助的話,記得一鍵四連——點贊、收藏、關注、評論!謝謝uu們的支持!