蘇嵌實訓 嵌入式 linux C 第 3 天

2021-10-07 20:48:31 字數 2533 閱讀 3379

專案名稱

【蘇嵌實訓-嵌入式 linux c 第 3 天】

今日進度以及任務嵌入式c實戰詳解1-開發流程、編碼規範

本日任務完成情況按時完成了老師課後布置的程式設計題

本日開發**現的問題彙總

本日未解決問題1、老師課上說64位作業系統指標長度應該是8個位元組,32位作業系統指標長度為4個位元組,但是我電腦是64位,編譯出來的指標長度顯示4個位元組,這個問題有待查詢。

2、對於上課的i++,++i,*(ptr++), *(++ptr)掌握還不夠熟練。

本日開發收穫學習了c語言概述、資料型別、輸入輸出、運算子以及基本控制語句,詳細見筆記部分

其他

一、概述

1、c語言之父?

丹尼斯·里奇, 1978 k&rc --unix是由c開發的

2、c語言的特點(優勢)?

直接訪問硬體、執行效率、移植性

因為c語言有指標型別

《嵌入式開發為什麼選擇c語言?>

所有作業系統的核心都採用了c語言;

不會,python是解釋性語言,不可能替代c語言

3、c語言標準?

k&rc 、c89、c99、c11

4、如何學習c語言?

寫**並不是大量的看書、專案

二、資料型別

1、所有的資料型別的定義、初始化;

printf(「a = %p\n」,a);//a+1增加乙個陣列元素長度

printf("&a = %p\n",&a);//&a+1增加乙個陣列長度

右左法則:

1)確定a是乙個變數,就要確定該變數儲存什麼型別的資料,儲存什麼型別的資料,它就是什麼型別的變數;

2)確定a是乙個指標變數,就要確定該指標變數儲存什麼型別的位址,儲存什麼型別的位址,它就是什麼型別的指標變數;

3)確定a是乙個陣列,就要確定陣列裡的元素是什麼型別的,元素是什麼型別,它就是什麼陣列;

4)確定a是乙個函式,就要確定函式的形參和返回值;

int a; //乙個整型數

int *a; //整型指標變數

int **a; //整型指標的指標變數

int a[10]; //整型陣列

int *a[10]; //整型指標陣列

int (*a)[10]; //陣列指標變數,指向的是整型陣列

int (*a)(int); //函式指標變數,指向的是形參為int,返回值為int

int (*a[10])(int); //函式指標陣列,

2、各種資料型別的位元組長度(所佔記憶體空間的大小)及取值範圍;

基本型別位元組長度:

int   4

char   1

short  2

long   4

float   4

double  8

指標變數的位元組長度

指標變數的位元組長度是固定的!!

《因為指標儲存的是位址,位址在作業系統中是固定長度,長度是由作業系統位數決定的,32位系統,指標是4個位元組;64位系統,指標是8個位元組》

sizeof vs strlen:

1)sizeof是運算子,不是函式;作用:計算資料型別或者變數的所佔記憶體空間的大小。

2)strlen是字串庫函式;作用:統計當前字串的字元個數,不包含\0。

3)sizeof在計算字串的大小時包含\0

3、signed\unsigned

三、輸入輸出

printf:

《格式化控制符》//行緩衝,滿一行才輸出

scanf:

用scanf輸入字元的時候需要先用getchar()將緩衝區裡面的回車取走

getchar

putchar

gets

四、運算子、基本控制語句

1、i++;++i;

邏輯運算子&&||

2、位運算

3、whilefor//已知迴圈次數用for,不知迴圈次數用while

4、ifswitchcase

5、breakcontinue

6、goto:異常處理

//函式傳參從右邊開始傳參

蘇嵌實訓 嵌入式 linux C 第 3天

專案名稱 蘇嵌實訓 嵌入式 linux c 第 3天 今日進度以及任務 學習linux下常用的開發工具 任務完成情況 已完成本日開發 現的問題彙總 對gdb運用不熟悉 本日未解決問題 如何使程式在編譯的過程中不進行優化 本日開發收穫 linux中靜態和動態庫,gdb,makefile 1 編譯器 優...

蘇嵌實訓 嵌入式 LinuxC 第 3 天

專案名稱 蘇嵌實訓 嵌入式 linuxc 第 3 天 今日進度以及任務 c語言的基礎 c語言的特點c語言標準資料型別運算子基本控制語句 本日任務完成情況 詳細說明本日任務是否按計畫完成,開發的 量 今天自己沒寫很多 自己感覺還可以 感覺自己c還得加強 多看點書 本日未解決問題 感覺自己c還得加強 多...

蘇嵌實訓 嵌入式 linux C 第 1 天

專案名稱 蘇嵌實訓 嵌入式 linux c 第 1 天 今日進度以及任務嵌入式開發概述及嵌入式linux c專案演示 嵌入式環境安裝與使用 本日任務完成情況已完成課上布置的7個小題作業,並把課上的筆記做了相應整理。本日開發 現的問題彙總1 使用目錄指令的時候用 cd.不能返回上一級目錄並且報錯,查詢...