keil編譯c文件
⑴ keil 怎麼同時編譯多個C文件
編好多個c文件,做個.h頭文件,將main函數中需要的程序以類似extern
void
getnum()的格式寫上,然後再main函數中添加include
「*.h」,便可以在main函數中使用其他c文件中定義的函數了。
⑵ 如何將keil編譯後生成的.BIN .ASM .HEX 反編譯成C文件
明確告訴你,不可能。
如果是把.BIN或.HEX反匯編成匯編程序,那是可以的,因為機器碼與匯編命令是一一對應的,網上有這樣的工具。但如果想把匯編整理成C那就不現實了,每種C編譯器的編譯方式都是不一樣的,哪怕同一種編譯器採用不同的優化策略,生成的機器碼也不一樣,可想而知,這個難度有多大,因此,做逆向工程的都是研究匯編的。
另外,.ASM是匯編程序的擴展名
⑶ 如何使用Keil編譯匯編程序或c語言程序
打開Keil後選擇【File】下的【new】新建一個空白文檔。將編輯好的程序源碼復制到該文件中。
如何使用Keil編譯匯編程序或C語言程序
選擇左上角的保存按鈕進行保存,將彈出保存對話框。
如何使用Keil編譯匯編程序或C語言程序
選擇保存路徑和編輯文件名。記住,這里的文件名很重要,如果你是C語言程序的話,加上.c後綴,如果你是用匯編語言,加上.ASM後綴。這樣,Keil就能自動識別你的文件類型了。
如何使用Keil編譯匯編程序或C語言程序
現在你就可以將保存的文件添加到項目中了,項目文件要提前在[Project]中新建。右擊選擇【Source Group1】點擊【Add Files to Group..】
如何使用Keil編譯匯編程序或C語言程序
在彈出的對話框中選擇[文件類型]為All files,這個很關鍵。然後選擇你要添加的文件。點擊Add添加。
如何使用Keil編譯匯編程序或C語言程序
在[Source Group]中就會顯示新添加的.ASM文件,按圖中選擇彈出【Option for Target】對話框。
如何使用Keil編譯匯編程序或C語言程序
7
切換到[output]選項卡選中【Create HEX FILE】,就可以在編譯成功後自動生成.hex文件。編譯按鈕在左上角3個按鈕,從左到右依次點擊,如果源碼沒錯,都可以編譯通過了。
如何使用Keil編譯匯編程序或C語言程序
⑷ 是否能在keil中混合編譯c和c++程序
keil中支持混合編譯C和C++程序, 因為其本質最終都是編譯成匯編,所以是可以同時操作的。
在混合編譯時,需要注意以下幾點:
1、C文件擴展名必須為.C, C++文件擴展名必須為.CPP, 頭文件擴展名必須為.CPP。 如果源文件的擴展名使用錯誤,會導致編譯出錯。
2、C語言的頭文件,需要加上如下條件編譯及限制代碼:
#ifdef__cplusplus
extern"C"{
#endif
//原本的頭文件內容。
#ifdef__cplusplus
}
#endif
其功能為,當使用c++編譯器編譯時,會添加extern "C" {}限制。 這樣才可以使C語言的函數聲明被C++正確識別。
3、所有C++文件中需要被C調用的函數,在定義和聲明時都需要加上
extern "C"
可以是單獨的函數,比如
extern"C"voidfunc_cpp_for_c(void)
{
//...
}
也可以是程序段,比如
extern"C"{
voidfunc1()
{
}
voidfunc2()
{
}
}4、編譯選項中,C99編譯選項需要去掉。如圖:

⑸ keil 怎麼同時編譯多個C文件
要想把多個C程序同時編譯
1.主函數里要有對其他C程序里的所有函數的聲明。(也可以用.h文件來聲明並在主函數里include "*.h" *代表h文件文件名)
2.在keil工程里要添加所有.c文件
⑹ 用keil軟體編寫C語言程序
1:定義一個變數,指ram80h的內容賦給變數,再把變數的量賦給外部ram2010h,
⑺ 學習單片機,Keil無法編譯.asm文件和.c文件
你只是打開了源文件,但是沒有將源文件導入你的工程,所以提示這個錯誤
導入文件的選項在右邊project框裡面,右鍵點Source Group 1,選Add Files... 添加你的源文件就行了
⑻ keil如何打開多個點c並完整編譯
點擊全局編譯按鈕
,完成後在相應目錄文件夾(之前存放hex文件的路徑)下即可看到生成的ethernet.lib文件。
6、lib文件生成後,還需.h文件,h文件有兩種方式,一種是保留之前.c文件對應的.h文件,繼續照常使用,另一種是可將單獨的.h文件合並成一個新的ethernet.h,直接在main.c調用ethernet.h即可。
7、將lib文件剪切放到Ethernet文件路徑下,將之前的socket.c、w5500.c等文件刪除掉,頭文件換成ethernet.h,工程里將ethernet.lib加入到group(ethernet文件夾)里。
8、將取消編譯的文件重新打開,將編譯後文件類型改回.hex文件,然後全編譯,沒有錯誤即完成。
另外,若想將一個.c文件生成一個lib文件,只需保留該.c文件進行編譯,.h文件也保持不變,將工程中原先的.c文件替換成.lib文件即可。
用心寫好每篇文章,分享給需要的你☺,如果對您有用希望能留下您的腳印(點贊/評論/收藏)!
stm32
c語言
keil mdk
嵌入式
注意!注意!你有一個手機待領取
巨摩互動
廣告
Keil對lib封裝庫反匯編成C語言.pdf
502下載·22評論
2013年5月6日
把c++的exe工程編譯為動態庫dll靜態庫lib,並實現調用(超詳細)
2087閱讀·0評論·1點贊
2020年8月28日
源代碼封裝成庫Lib的方法
504閱讀·0評論·0點贊
2022年10月14日
STM32/keil把多個c文件編譯為靜態庫lib
2190閱讀·0評論·6點贊
2021年1月5日
C/C++ 靜態庫(lib)的概念和使用方法
3432閱讀·0評論·4點贊
2022年5月2日
Keil 下生成LIB庫文件以及如何使用LIB庫文件
732閱讀·1評論·0點贊
2020年12月19日
注意!注意!你有一個手機待領取
巨摩互動
廣告
C語言 之 編譯自己的lib庫
1457閱讀·0評論·1點贊
2020年8月7日
CMake交叉編譯簡單教程
3.2W閱讀·2評論·14點贊
2018年9月7日
如何將c語言封裝成dll文件,封裝動態庫dll與靜態庫lib(原理及簡單實例)
2069閱讀·0評論·1點贊
2021年5月21日
keil C對lib封裝庫反匯編成C語言,Keil軟體「C語言」及「匯編」混編 —— 相關知識整理.doc...
1587閱讀·0評論·0點贊
2021年5月21日
keil 加密:編譯代碼成lib庫
454閱讀·0評論·0點贊
2022年7月28日
Keil C 裡面Lib庫文件的生成與調用
11下載·0評論
2020年8月4日
keil C對lib封裝庫反匯編成C語言
101下載·4評論
2011年4月8日
C語言編譯lib庫手動添加
1888閱讀·0評論·0點贊
2017年6月18日
基於Keil下多文件打包生成Lib庫文件的具體操作
2667閱讀·3評論·2點贊
2020年1月18日
Windows DOS命令行編譯C/C++程序----庫文件.lib的鏈接
1752閱讀·0評論·0點贊
2019年2月21日
keil把源代碼生成lib的方法
2754閱讀·0評論·6點贊
2022年1月25日
keil 編譯生成 .lib文件
2244閱讀·4評論·1點贊
2018年1月8日
keil多文件編譯
724閱讀·0評論·1點贊
2022年4月3日
在keil中將文件封裝為lib庫文件需要注意的地方
1395閱讀·0評論·0點贊
2021年11月15日
去首頁
看看更多熱門內容
評論1
YJer
贊
你好,第6點中提到的,將單獨的.h文件合並成一個新的ethernet.h,
