第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

請(qǐng)問(wèn)一下如何實(shí)現(xiàn)“選擇性編譯”?

請(qǐng)問(wèn)一下如何實(shí)現(xiàn)“選擇性編譯”?

C
慕婉清6462132 2019-02-21 12:10:45
現(xiàn)在有一個(gè)C工程,假設(shè)只有main.c 和 pattern.h文件,在后者中定義了一些標(biāo)準(zhǔn)化的接口想實(shí)現(xiàn)一個(gè)功能:將pattern.h中定義的接口提供給用戶開(kāi)發(fā),最終將會(huì)有很多包含該頭文件的c文件。比如 A同學(xué)寫一個(gè) patternA.c 來(lái)實(shí)現(xiàn)這個(gè)接口,同理 B同學(xué)寫一個(gè) patternB.c 來(lái)實(shí)現(xiàn)這個(gè)接口,這兩個(gè)c文件都有#include "pattern.h"并且會(huì)同時(shí)存在于一個(gè)文件目錄下。最終在main.c 中 或者makefile 中,如何實(shí)現(xiàn)選擇其中之一來(lái)進(jìn)行編譯鏈接?比如修改main.c 中的宏定義 或者 運(yùn)行 make patternA or make patternB最好可以通過(guò)后者實(shí)現(xiàn),這樣可以避免在編譯過(guò)程中需要用戶修改源代碼
查看完整描述

2 回答

?
富國(guó)滬深

TA貢獻(xiàn)1790條經(jīng)驗(yàn) 獲得超9個(gè)贊

Makefile 示例

all: patternA patternBpatternA: main.c patternA.c pattern.h
    gcc -o $@ $^patternB: main.c patternB.c pattern.h
    gcc -o $@ $^


查看完整回答
反對(duì) 回復(fù) 2019-02-21
?
慕碼人8056858

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超6個(gè)贊

  1. make 或 make all 同時(shí)編譯 patternA 和 patternB

  2. make patternA 編譯 patternA

  3. make patternB 編譯 patternB


查看完整回答
反對(duì) 回復(fù) 2019-02-21
  • 2 回答
  • 0 關(guān)注
  • 696 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)