嵌入式專業 大二下學期 暑期實踐報告總結

2021-07-27 22:00:51 字數 3279 閱讀 8988

暑期實踐報告總結

這個學期暑假,我們嵌入式軟體的全體大二學生進入了實踐階段,與大一相比,我們這期又增加了實習流程。在老師們的辛勤教導下,我們在熟悉的機房中開始了對嵌入式專業的進一步深入學習。老師讓我們從linux基礎開始,雖然之前學過linux,但只是有一點了解,並沒有真正的去接觸。

這次,我了解到了它與其他系統相比的優勢,學習了linux的分割槽命名,常用命名,文字編譯器vi的使用,源**的編譯和除錯,多模組的編譯和鏈結以及管理工具。通過這些學習,我基本能夠在linux的系統下通過vi編譯器編寫c語言程式,通過一些常用命令來除錯,檢視並修改程式。能夠加深印象,熟練操作。

能夠在那麼短的時間內初步掌握linux,與在學校學習一門課程的意義完全不同,通過老師的講解,自己的練習,同學間的交流。與此同時,重溫了單向鍊錶,鍊錶常用操作的熟練度,常變數的定義,,結構體的命名,雜湊表的程式設計,強化了c語言程式設計。時間雖短,但同學間的**,師生間的互動以及精華般的訓練,讓我感覺無論是理論知識還是實踐能力都得到了大幅度的提高。

在這裡把理論與實踐相結合,相互促進,相互補充,使得學習更加透徹。通過用不同的方法實現同乙個專案,不斷深入,層層推進。

下面我把最近所學的內容整理如下:

一:linux的一些簡單的命令(在redhat下完成)

<1>vim+檔名後按enter鍵

如:vim test123.c 按enter鍵 ->第一次輸入該命令是建立乙個資料夾test123.c,並在該資料夾裡編寫程式(按i鍵,可以進入程式進行修改;按esc則退出程式);

<2>二次以上輸入該命令,並按i鍵,則是進入該資料夾下所編寫的程式中,對該程式的相關語句進行查詢,修改,刪除等操作,按esc則退出程式;

<3>程式編輯好後,若儲存並退出,則進行末行模式,

如:輸入—>esc鍵(退出程式)—>輸入命令 :wq(:表示轉到程式末行,wq表示儲存並退出)

若程式不想儲存,則輸入wq!表示不儲存並退出原來程式;

<4>對所編輯的程式進行執行,檢測(該程式位於test,test.c下):

gcc -o test test.c查詢上次所輸入的命令(節約時間)

gcc -o test test.c -wall 提示程式中所出現的所有警告

gcc -o test test.c -o提高執行效率

gcc -o test test.c -g將程式在gccf下進行編譯

<5>gdb一些命令的意義:

gdbtest執行程式

gdb l 10查詢檔案下程式的前十行,並顯示出來

gdb b 8在程式第八行設定斷點

gdb r指向斷點位置執行(即在該斷點處往下執行)

gdb p sum輸出變數sum 的值

gdb n程式一步一步執行

gdb c繼續往下執行

gdb q退出程式

<5>table ->test(自動補齊)

~代表當前使用者的根目錄

二:<1>set的一些命令的用法

set tabstop=4

set shiftwidth=4

set autoindent自動縮排

set nu引數改變視窗大小

<2>程式模板的標準化要求

程式塊間要有空行(每塊的函式代表一種功能,各功能塊要相互分開)

//程式要包含的基本內容

函式名稱

功能 返回值

其他<3>合併檔案口令

gcc -o test test.c fun.c//將test.c 和fun.c編譯合併成乙個檔案test

<4>main: test.o fun.o

(table鍵)gcc -o main test.o fun.o//執行 main函式鏈結下的test.o 和fun.o下的程式

test.o:test.c

gcc -c test.c//將test.c編譯成test.o

fun.o:fun.c

gcc -c fun.c//將fun.c編譯成fun.o

三:(七月3號)

<1>c語言的幾個重要部分

【1】變數;【2】:語句【3】:分支;【4】:迴圈;【5】:函式;【6】:訪問;【7】:類;【8】:封裝,繼承;

<2>與鍊錶相比,陣列的劣勢為:刪除某結點時,釋放或前移的項數比較繁瑣,並且在增加結點時,擴充套件空間較複雜;

<3>單向鍊錶,其中(雙向鍊錶的(單環鍊錶)居主),具體乙個例項如下:

#include

#include

#include

struct node

;int main()

printf("\n");

}注釋:將該鍊錶儲存在乙個link.c檔案中,所用的相關指令有:

gcc -o link link.c將程式儲存在link.c檔案中,除錯,執行

./link當前目錄下鏈結,執行

<4>在結構體變數中,模型如下:

struct node

; 注意:末尾的大括號後一定要加分號

<5>除錯程式時,若系統出現sigsegv的提示,則表示出現段錯誤,即訪問記憶體錯誤;

四:<1>面試流程:

1)筆試(重要):主要分兩部分:一:c語言的基礎知識;二:資料結構(c語言的核心結構);

2)c++主要是其封裝,繼承,多型的三個特性;

3)曾經做過的專案;

4)性格方面的分析;

5)面試人提出的一些問題(最後乙個往往是他們最感興趣的)

6)待遇;

<2>malloc:申明變數時,申請空間形式為:p=malloc(sizeof());

指標:佔4個位元組;

free:記憶體釋放函式形式為:void free(void *p)

<3>鍊錶的其中乙個基本操作,建立新結點的程式如下:

#include

#include

#include

int main()

printf("\n");

}for(;;)//while(1)

link_print(h);}五:

1)變數的定義程式:

#define pi 3.14

int main()

2)編寫乙個程式,可以判斷輸入的年數是否為閏年

分析:閏年的條件為:該年數能被4整除但不能被100整除或能被400整除

程式如下:

#include

int main()

六:<1>簡單的包含結構體變數的程式

#include

#include

大二下學期思想匯報

思想匯報2010.4 2010.10 敬愛的黨組織 轉眼間大學生活已經過半,在已經過去的時間裡,在組織,學習和老師的指導下,我從思想到行動都有了很大的轉變,感謝組織對我的教育,現在就最近這半年的思想情況向組織做匯報 1在工作方面,我們進行了班委會的改選,我通過競選從上學期的生活委員轉而擔任班長職務,...

大二下學期思想匯報

經過這一學期在學生會擔任網路部副部長的工作,發現自己已然成熟了不少,使自己無論是在處理事情,亦或是調節人際關係,再或者技術上的工作能力,都已經不能較往日而語了。多次重新鼓起勇氣站起來面對生活中不斷地挑戰 感謝一同工作的夥伴們,在他們身上我看到了許許多多自己的不足,他們的建議讓我的工作更加完善和順利,...

大二下學期班級工作總結

回顧過去的,我們0601班積極進取,開拓創新,各方面都有了較為滿意的成績,為了在今後的學習工作中更多地取得成績,避免失誤,現將我班在大二這下的如下,以繼承優點,避免,為我係的發展做出我們的貢獻。學習方面 我班保持良好的課堂學習氣氛和積極進取的學習,在課堂上不斷吸取講師所傳授的文化知識,積極完成任務。...