將C 程式碼整合到不同VS2010 專案中的C專案中導致從C 程式碼呼叫C 函數時出現連結錯誤。此錯誤標識為 LNK2001,與未解析的外部符號有關。
要修正此問題,請遵循特定準則來確保程式碼庫的正確組織:
模組化程式碼:
建立標頭與實作檔案:
管理出口和進口:
functions.h
#pragma once
#define FUNCTIONS_EXPORT_API
#if defined(__cplusplus)
extern "C" {
#endif
FUNCTIONS_EXPORT_API char *dtoa(double, int, int, int*, int*, char**);
FUNCTIONS_EXPORT_API char *g_fmt(char*, double);
FUNCTIONS_EXPORT_API void freedtoa(char*);
#if defined(__cplusplus)
}
#endif
functions.c
#define FUNCTIONS_EXPORTS
#include "functions.h"
char *dtoa(double, int, int, int*, int*, char**)
{
// Function implementation
}
char *g_fmt(char*, double)
{
// Function implementation
}
void freedtoa(char*)
{
// Function implementation
}
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3