看板 C_and_CPP 關於我們 聯絡資訊
我想問的是 今天我有三個檔案 main.c f.c f.h f.h 是宣告 int f(); f.c 是定義 int f(){return 1;} main.c 主程式 #include <stdio.h> #include "f.h" ... int c = f(); ?// 錯誤訊息在這行 can not be resolved ... 我第一次編譯main.c時,沒有f.c 只有f.h 為什麼這樣編譯main.c不會過啊? 不是應該會過嗎? 應該在link時才會錯? 接著 三個檔案都備齊了 只是f.c中多加了#include "f.h" 但為啥沒錯啊 main.c 跟 f.c都有include "f.h" 不是會重複定義嗎? 卻可編出執行檔= = 順便問一下lib就是一對寫好的.c編成的.o (一堆編譯過的function) 那bin是甚麼呢? 通常都有bin資料夾 實在分不清了 先謝謝各位前輩了! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 39.15.115.206
loveme00835:請附上錯誤訊息, 還有修改標題否則刪文 07/09 19:39
※ 編輯: NOtWorThy 來自: 39.15.115.206 (07/09 19:50)
Bencrie:你沒說你怎麼 build 啊 07/09 19:56
NOtWorThy:我是用 DEV C COMPILE 07/09 20:03
CaptainH:1. 請把那個過時的IDE丟掉 07/09 20:15
CaptainH:2. 你說的compile其實已經包含link了 07/09 20:16
TsinTa:can not be resolved似乎就是link時的錯誤了..... 07/09 20:18
TsinTa:而且Dev C的compile根本就包含link...... 07/09 20:19
TsinTa:而且Dev C我也覺得過時了@@" 07/09 20:20
NOtWorThy:喔喔 所以沒包含LINK的話應該是可以編過的吧?! 07/09 20:20
NOtWorThy:非常謝謝前輩們 07/09 20:20
CaptainH:可以的話, 用打指令的方式會比較有感覺 07/09 20:26