extern,可以在一個文件中引用另一個文件中定義的變量或者函數,下面就結合具體的實例。
首先,引用同一個文件的變量,先寫一個簡單的函數。
#include
int func();
int main()
{
func(); //1
printf("%d",num); //2
return 0;
}
int num = 3;
int func()
{
printf("%d\n",num);
}
這里一共定義了兩個函數,一個主函數一個子函數,子函數里直接打印的num的數據,要打印數據首先要找到定義的數據,這里定義的num是全局變量所以可以直接打印數據。
如果我們用extern進行定義數據時需要采用全局變量定義,在其他地方使用,比如我們在主函數定義了一個extern變量我們在其他地方使用時需要線對變量進行賦值操作,否則找不到相關的num。
#include
int func();
int main()
{
func(); //1
extern int num;
printf("%d",num); //2
return 0;
}
int num = 3;
int func()
{
printf("%d\n",num);
}
下面再說extern與const使用問題 。
如果我們要使用一個全局變量而且是不能改變的,那我們需要用const配合使用,代碼如下:
#include
int main()
{
extern const int num;
printf("%d",num);
return 0;
}
子函數
#include
const int num=5;
void func()
{
printf("fun in a.c");
}
這里我們在主函數定義了一個extern const變量,需要在子函數的全局變量中定義const int num=5;這樣就可以使用。
extern除了引用另一個文件中的變量外,還可以引用另一個文件中的函數,引用方法和引用變量相似。
mian.c
#include
int main()
{
extern void func();
func();
return 0;
}
common.c
#include
const int num=5;
void func()
{
printf("fun in a.c");
}
這里main函數中引用了b.c中的函數func。因為所有的函數都是全局的,所以對函數的extern用法和對全局變量的修飾基本相同,需要注意的就是,需要指明返回值的類型和參數。
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
STM32
+關注
關注
2309文章
11162瀏覽量
373435 -
參數
+關注
關注
11文章
1869瀏覽量
33945 -
函數
+關注
關注
3文章
4417瀏覽量
67504
發布評論請先 登錄
相關推薦
熱點推薦
關鍵字volatile的含意
關鍵字volatile有什么含意?
一個定義為volatile的變量是說這變量可能會被意想不到地改變,這樣,編譯器就不會去假設這個變量的值了。精確地說就是,優化器在用到這個變量時必須每次都小心
發表于 12-23 06:33
interrupt關鍵字使用
中斷是嵌入式系統中重要的組成部分,這導致了很多編譯開發商提供一種擴展—讓標準C支持中斷。具代表事實是,產生了一個新的關鍵字__interrupt。下面的代碼就使用了__interrupt關鍵字去定義
發表于 12-22 09:36
Labview 解析dxf文件并顯示
21
966.0371542567061
31
0.0
0
然后對照關鍵字進行一一解析,直線的定義就是A點和B點,解析出來之后就可以直接畫圖。
多段線的解析和畫圖和這個類似,就不贅述了。接著是圓弧
發表于 12-01 11:28
Temu跨境電商按關鍵字搜索Temu商品API的應用及接口請求示例
Temu跨境電商按關鍵字搜索Temu商品API的應用及接口請求示例 Temu跨境電商按關鍵字搜索Temu商品API的應用場景 Temu跨境電商平臺按關鍵字搜索Temu商品API的主要應用場景包括但不
哪些場合會用到volatile關鍵字?
當你理解 volatile關鍵字的含義之后,你就能明白,其實很多場合都能用到 volatile關鍵字。
1.全局變量單片機開發,難免會用到全局變量。一些初級工程師,更是全局變量滿天飛。這種情況下
發表于 11-25 08:19
天眼查平臺關鍵字搜索企業數據API接口技術指南
? 一、接口概述 天眼查提供的企業搜索API接口,支持通過關鍵字查詢企業工商信息、經營狀態等核心數據。該接口采用RESTful架構,返回JSON格式數據。 二、接口認證 調用需使用API密鑰認證
堆棧的定義,堆棧的使用方法
和使用;
對于8086CPU,進出堆棧的只能是2字節的數據。
2 堆棧的使用方法
常用的堆棧相關指令包括PUSH POP PUSHF和POPF,語法如下:
PUSH 源操作數;將指定操作數入棧保護
POP
發表于 11-21 06:49
1688平臺關鍵字搜索商品API接口技術實踐指南
/com.alibaba.product/alibaba.product.search/ 必備參數: { "keyword": "手機", // 搜索關鍵字 "pageNo": 1, // 頁碼 "pageSize": 20, // 每頁數量 "access_token": "xxx" // 認證令牌 } 二、響應
亞馬遜平臺根據關鍵字搜索商品API接口
? ?在電商開發中,集成亞馬遜平臺的商品搜索功能是常見需求。通過亞馬遜的Product Advertising API(PAAPI),開發者可以根據關鍵字高效檢索商品信息。本技術帖將逐步介紹如何調用
亞馬遜 SP-API 深度開發:關鍵字搜索接口的購物意圖挖掘與合規競品分析
本文深度解析亞馬遜SP-API關鍵字搜索接口的合規調用與商業應用,涵蓋意圖識別、競品分析、性能優化全鏈路。通過COSMO算法解析用戶購物意圖,結合合規技術方案提升關鍵詞轉化率,助力賣家實現數據驅動決策,安全高效優化運營。
阿里巴巴開放平臺關鍵字搜索商品接口實戰詳解:OAuth2.0 認證落地 + 檢索效率優化(附避坑代碼)
在 B2B 電商數據對接中,阿里巴巴開放平臺的關鍵字搜索商品接口(alibaba.aliindex.search)是獲取批發商品、供應商數據的核心通道。但多數開發者會卡在OAuth2.0 認證斷連
阿里巴巴國際站關鍵字搜索 API 實戰:從多條件篩選到商品列表高效獲客
??在跨境電商數據采集場景中,通過關鍵字精準搜索商品列表是基礎且核心的需求。本文將聚焦阿里巴巴國際站的關鍵字搜索接口,詳細介紹如何構建多條件搜索請求、處理分頁數據、解析商品列表信息,并提供可直接復用的 Python 實現方案,幫
錫膏的儲存及使用方法詳解
錫膏是一種常用的焊接輔助材料,廣泛應用于電子、電器、通訊、儀表等行業的焊接工藝中。正確的儲存和使用方法對于保證錫膏的品質和焊接效果至關重要。本文將就錫膏的儲存和使用方法進行詳細介紹,希
單片機編程關鍵字之volatile
volatile 修飾的變量是說這變量可能會被意想不到地改變。通常對于程序員而言,單片機 中用的就算常見了volatile 是易變的,不穩定的意思。其實對于很多人來說,根本沒見過這個關鍵字,不 知道
發表于 04-02 13:47
?2次下載
stm32中常用關鍵字的使用方法
評論