C語言0基礎入門遊戲輔助開發—學習筆記01
PS:因為程式設計以及逆向分析怎麼都是不可能繞過C語言的,所以我開始了我的C語言學習之旅,純新手純萌新。
程式語言與IDE
程式語言應用領域
1.C語言的主要應用領域作業系統、嵌入式、伺服器這三塊,是一門強大的被廣泛運用於底層的高階語言(遊戲安全、軟體破解、病毒木馬分析)
2.Java主要應用於企業級應用開發、網站平臺開發、移動領域的手機遊戲和移動andoroid開發,是市面上找工作機會最多但也同樣競爭最激烈的一門語言。
3.C++主要用於遊戲領域、辦公軟體、圖形處理、網站搜尋引擎、圖形介面層關係型資料、瀏覽器、軟體開發、整合環境、ide等等,目前找工作機會僅次於Java。
4.Python的主要應用領域是爬蟲、資料分析、自動化測試和機器學習,還有一些中小企業會用它做後端開發,也是比較容易學習的一門語言。目前的話Python招聘數量比以前多了很多,已經達到了Java的2/3了。
5.C#主要應用於Windows運用,商業應用和軟體開發領域,最幾年的話勢頭也是很不錯。(C sharp)
6.JavaScript就是很單純的前段開發必學的指令碼語言。
7.PHP的話也是web開發方面曾經名盛一時的語言,不過近幾年趨勢不太好。
8.Go語言最近也被一部分人所鍾愛,它主要應用於區塊鏈技術和後端伺服器應用。
IDE
IDE:整合開發環境(IDE)是用於提供程式開發環境的應用程式,一般包括程式碼編輯器、編譯器、偵錯程式和圖形使用者介面等工具。繼承了程式碼編寫功能、分析功能、編譯功能、除錯功能等一體化的開發軟體服務套。(用程式開發程式)
API
API:
應用程式介面(簡稱API),又稱為應用程式設計介面。
介面是給程式設計人員看的,系統提供給程式設計人員呼叫的地方。
所謂Windows API就是Windows作業系統提供給程式設計開發人員的介面
刪除檔案就是呼叫刪除檔案的API
建立檔案就是呼叫建立檔案的API
Windows上幾乎所有的操作都是和Windows API 打交道
第一個程式開發、變數、除錯
第一個程式開發
程式程式碼的入口點:
不管前面有多少程式碼,程式碼始終從main開始執行。
main()
{
}
如何建立c語言檔案
變數本質、屬性
思考:我們的資料應該透過怎樣的形式放到記憶體中?
是直接存放的嗎?
如果是直接存放的
那麼這麼多的資料,計算機用什麼來標記呢?
那麼這麼多的資料,程式設計師用什麼來標記呢?
(1)我們所有資料都是放在記憶體裡面的,只要你想分析都能分析得到。
(2)計算機是用記憶體地址來標記資料的。
(3)給資料對應的記憶體地址起一個名字,這個名字叫做“變數”
既然是名字,就應該符合一定的規則,而不能胡亂定義
//入口函式(理解為這個程式碼入口的地方,或者程式碼初始執行的地方)
main()
{
int a = 3;//變數的定義:定義一個變數a,賦值為3,資料型別(姓)是int,名字是a,數值是3
}
注意:
int這種已經存在於變成語言框架中的固定單詞 又叫“關鍵字”
a這種我們自己起的名字或者單詞 又叫“使用者自定義識別符號”
關鍵字有哪些
關鍵字(Keywords)
也稱保留字(Reserved Word),是C語言預先定義的、最具有特殊意義的單詞(A word that has special meaning in C)
ANSI C89:
ANSI C89,也被稱為ANSI X3.159-1989 "Programming Language C",是美國國家標準協會(ANSI)在1989年釋出的第一個完整的C語言標準。這個標準在1990年被國際標準組織ISO(International Organization for Standardization)採納,ISO官方給予的名稱為ISO/IEC 9899,通常被稱為C90。
C89常用關鍵字——32個:
auto | break | case | char |
---|---|---|---|
const | continue | default | do |
double | else | enum | extern |
float | for | goto | if |
int | long | register | return |
short | signed | sizeof | static |
struct | switch | typedef | union |
unsigned | void | volatile | while |
識別符號(Identifiers)
-
大小寫字母,數字和下劃線構成的一個字元序列
-
系統預定義識別符號
-
使用者自定義識別符號:
用來表示變數名、符號常量名、陣列名、函式名等
命名規則:
- 首字元必須是字母或下劃線
- 見名知意,不要使用漢語拼音
- 不能於關鍵字及系統預定義的識別符號相同
變數定義的例項
int a = 66;//(int後面一個小空格,結尾一定要有分號)
int a_88 = 88;
int num = 18;
int age = 18;
int height = 120;
看透變數的屬性:
1.變數名字(使用者自定義識別符號)
2.變數的值(資料,賦值來的)
3.變數的型別(資料型別,int—整數型)
4.變數的地址(記憶體地址中的值可以改變)
正因為值可以改變,所以交“變”量
觀察變數資料
F10快捷鍵:斷點(break point,又被很多工具簡寫為指令bp)
第一種方法:快捷鍵F10,這個程式此時就聽我們指揮了,
現在一行程式碼一行程式碼去執行,人為的,可控的,這個過程就叫做除錯(debug)
按下F10,此時我們程式碼旁邊產生了一個小箭頭
再次按下F10,繼續執行下一句
第二種方法:斷點(break point)
看到斷點就應該想到“除錯”這兩個字。
在灰色地方對應行數點一下,會出現一個小紅點,這個小紅點就是斷點。
點選偵錯程式後開始除錯,會停止在斷點的地方。
取消斷點,再點一下斷點就行。
本系列作為本人學習隨筆,可能多有不足,望諒解,指正!