1. 準備環境
目的: 嵌入式開發---開發具體的產品實物---硬件電路
核心點: 學習C語言、學習STM32、學習Linux開發+驅動開發
VM虛擬機: 虛擬一臺電腦。
1.Windows
2.Linux
3.Mac os
Linux環境:
(1)redhat 紅帽系統(開發工具: C C++ java….)
(2)ubuntu 烏班圖操作系統
使用命令行………………
學習步驟
(1)學習基本命令使用
(2)學習C語言的開發
2. Linux下基本操作
登錄賬戶: root
密碼:根密碼
打開虛擬機的方法:
終端命令操作:
(1)縮小字體: Ctrl + “ - ”
(2)放大字體:Ctrl+Shift +”+”
?了解的基本知識
(1)Linux系統下: #表示超級用戶(root) $ 表示普通用戶
(2)Linux下目錄: 最頂層的目錄--- /
(3)Linux下看幫助的一些約定: [ ] 表示參數選填
< > 表示參數必須填
3. 介紹基本的命令使用
1.ls命令: 列出指定目錄下的所有的文件
命令的使用方法: ls [參數]
(1)-l 表示看詳細信息
(2)-a 表示看隱藏文件
(3)路徑: 比如: ls /work
2.cd 命令: 切換目錄
命令的使用方法: cd [切換的目錄路徑]
約定的路徑表示方法:
(1)./ : 表示當前路徑
(2)../ :表示上一層路徑(父目錄) 想要表示上上層: ../../
(3)~ : 表示用戶目錄 (默認cd不帶參數,就是~)
(4)- : 表示回到上一次的目錄
切換目錄示例: cd /work/pwd
相對路徑和絕對路徑區別: 相對路徑就是相對當前的目錄路徑進行尋址
絕對路徑就是從根目錄下進行尋址。
3.clear 命令: 清除屏幕的一頁 (實際上是翻頁)
4.pwd 命令: 獲取當前目錄的絕對路徑
5.rm 命令: 文件和文件夾刪除命令
用法: rm <文件或者文件夾的名稱> [參數]
參數:
-f :表示強制刪除
-v :輸出刪除的過程
-r :表示刪除的是目錄
示例: # rm 123 -rfv 強制刪除并輸出過程
通配符號: * 所有
#rm ./星 -rf 強制刪除當前目錄下的所有文件。
6.mkdir 命令: 創建目錄
用法: mkdir <創建的目錄名稱> [參數]
參數:
-p :可以一次性創建多層目錄
示例: # mkdir 123/456/abc/bhu -p 一次創建多層目錄
7.vim 命令: 基于命令行的編輯器
用法: vim <文件名稱> //如果文件不存在就創建, 存在就打開
vim 有兩種模式: 命令模式 和文本模式
(1)進入到命令模式的方法: Ctrl + “:”
在命令模式常用的操作: w保存 q退出 wq 保存并退出 q!不保存強制退出
(2)退出命令模式: ESC
(3)進入文本編輯模式: i表示插入數據, 退出:ESC
8.gedit 文本編輯器(記事本)
用法: gedit 123.c
9.gcc 編譯器
用法: gcc <將要編譯的文件> [參數]
常用參數: -o 指定編譯之后生成的文件名稱
比如: gcc 123.c -o app
支持編譯多個文件: gcc 123.c 456.c ….. -o app
10.man 命令: 查看幫助
用法: man [頁碼1~7] <函數、頭文件、命令>
例如: #man ls
#man 3 printf
進入到幫助頁面之后, q就直接退出
修改vim文件的配置: 加入行號顯示。
# vim /etc/vimrc
在文件最后加上兩行代碼,保存退出:
set number
set tabstop=4
切換到超級用戶: $su root 然后輸入密碼 按下回車確認
退出編輯器界面: 輸入q!
?linux下快捷方式
多使用: Tab按鍵 介紹: 在命令行下自動補全
多使用方向上下箭頭 介紹: 查看歷史命令
空格在Linux下很特殊,空格用來作為分隔符。
所以: 文件名稱 目錄的名稱 就不能包含空格。
4. C語言基礎
4.1 main函數
練習: 創建一個C語言文件,編譯,再輸出。
C語言基本構造: 前期主要學習 流程控制
(1)C語言代碼是由函數組成。
(2)學習基本語法
(3)學習語法的組合運行
1 #include //頭文件
2 int main() //主函數,C語言程序的入口。
3 {
4 printf("hello world!\n"); //格式化打印函數,向控制臺的標準輸出打印數據
5 return 0; //返回命令 0表示返回的數據
6 }
# : 表示預編譯,替換
存儲的基本單位: 1個字節 = 8位 ---->二進制 --->電平
3---->0x3--->0000 0011
4.2 數據類型
數據類型
1.int 整型 占4個字節
2.char 字符類型 占1個字節
3.float 單精度浮點,占4個字節
4.double 雙精度浮點類型,占8個字節
?C語言變量定義語法
<數據類型> <變量的名稱>;
int a;
1個字節=8位 1111 1111 ---->255
C語言有變量和常量之分: 變量可以改變數據 常量不能改變
int a=56; 78
4.3 格式打印與輸入
格式化打印
printf("c=%d\n",c);
用法: int data=888; printf(“%d”,data);
說明: 雙引號之間的數據都會原樣打印。
格式:
%d :整型 %c :字符 %f : 浮點數 %s :表示字符串
int data=888;
printf(“data=%d”,data); //輸出的結果:data=888
想要輸出多個數據:
printf(“data1=%d,data2=%d”,123,456);
格式化輸入函數
示例: int data; scanf(“%d”,&data); 表示從鍵盤上輸入一個整數存放到data變量中。
&:取地址,得到變量在計算機里的地址。
怎么結束? 空格最為結束分隔符、回車鍵結束輸入
1.#include
2 int main()
3 {
4 int data;
5 printf("請輸入整數:");
6 scanf("%d",&data);
7 printf("data=%d\n",data);
8 return 0;
9 }
輸入字符:
1 #include
2 int main()
3 {
4 char c='B'; //單引號
5 printf("c=%d\n",c);
6 return 0;
7 }
作業
1.實現大小寫轉換。
(1)從鍵盤上輸入一個大寫字母,輸出小寫字母
(2)從鍵盤上輸入一個小寫字母,輸出大寫字母
實際的案例:驗證碼
2. (1) 驗證char類型變量最大可以存放多大數據
(2) 驗證int類型變量最大可以存放多大數據
char data=88;
在瀏覽器輸入: 192.168.1.130:8080
作業:
1.搭建虛擬環境: 重新安裝一次操作系統
http://bbs.wanbangee.com/bbs/forum.php
2.熟悉系統操作命令
3.學習C語言基本語法
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
Linux
+關注
關注
87文章
11351瀏覽量
210510 -
C語言
+關注
關注
180文章
7615瀏覽量
137846 -
命令
+關注
關注
5文章
698瀏覽量
22127
發布評論請先 登錄
相關推薦
Linux內核中C語言宏的使用技巧
Linux內核可謂是集C語言大成者,從中我們可以學到非常多的技巧,本文來學習一下宏技巧,文章有點長,但耐心看完后C語言level直接飆升。
發表于 07-21 14:56
?510次閱讀
![<b class='flag-5'>Linux</b>內核中<b class='flag-5'>C</b><b class='flag-5'>語言</b>宏的使用技巧](https://file1.elecfans.com/web2/M00/8D/67/wKgaomS6K6-ABeGCAACZEUwHsEc653.png)
嵌入式Linux 及C語言高級開發
體、內存管理。通過本課程的學習,學員的C語言基礎更加扎實、編程能力得到進一步提升知識點一:軟件包管理及shell命令本次課對ubuntu系統的軟件包管理進行了系統的講解,并介紹了shell命令
發表于 04-03 13:38
深入探索Linux中的C語言
本章將深入探索 Linux 中的 C 語言。在本章中,我們將學到更多關于編譯器、從源碼到二進制程序的 4 個步驟、如何使用 Make 工具以及系統調用和 C 標準庫函數的差別的知識。我
Linux內核中常用的C語言技巧有哪些
Linux內核采用的是GCC編譯器,GCC編譯器除了支持ANSI C,還支持GNU C。在Linux內核中,許多地方都使用了GNU C
淺析Linux內核中常用的C語言技巧
Linux內核采用的是GCC編譯器,GCC編譯器除了支持ANSI C,還支持GNU C。在Linux內核中,許多地方都使用了GNU C
發表于 06-25 10:46
?476次閱讀
評論