从不同的C文件导入函数
Importing Functions from a different C file
我想从Microsoft Visual c++ 6.0中的另一个文件导入函数。我该怎么做呢?我已经尝试了如下:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#import <functions.cpp>
其中functions.cpp是我想要导入函数的文件名。F:CC++Term ProjectDos Plotter function Plotter.cpp(6):致命错误C1083:无法打开类型库文件:'Functions.cpp':没有这样的文件或目录
我该如何解决这个问题?
#import
指令用于类型库,通常是COM或。net,而不是c++源文件。有关完整的详细信息,请参阅MSDN页面。
为了包含来自另一个文件的c++函数,您通常需要使用#include
指令(详细信息)。这包括编译期间来自给定文件的代码。通常,你应该包含一个包含函数原型的头文件;可以包含代码文件,但通常不需要,也不总是安全的。
#pragma once
void Function(int arg);
和来源:
#include "functions.hpp"
void Function(int arg) { ++arg; }
要在另一个文件中使用它,您可以这样做:
#include "functions.hpp"
void OtherFunction()
{
Function(2);
}
还应该注意,头文件通常只包含一次。保证这一点的msvc标准方法是在开头添加#pragma once
。
编辑:并解决您发布的特定错误,这适用于#import
和#include
,您试图包含的文件必须在编译器的搜索路径中的某个地方。在Visual Studio中,您应该为项目include添加必要的路径(这因版本而异,但通常在项目属性->编译器下)。
1)你是说functions.hpp吗?C/cpp文件不应该是#include
d,除非你非常清楚你在做什么。
2)将文件的位置添加到项目属性中的自定义包含路径中,或者使用include "foo"
格式而不是include <foo>
3)在c中没有定义Import。您需要将原型和实现分开,include-guard原型文件,并#include
原型文件。
如果文件functions.cpp
位于同一目录,则使用include "functions.cpp"
代替
将文件命名为imported-function.hpp
,并确保它位于相同的目录中。或者,你可以把它链接到
- Linux:
/home/uname/appfolder/imported-function.hpp
- Windows:
C:Usernameunameappfolderimported-function.hpp
- ChromeOS:
/home/chronos/u-4e4342ea6b3b92244e7d4753922f0dc7125f4a1d/MyFiles/appfolder/imported-function.hpp
- 从文件导入数据时遇到问题.我有一个没完没了的循环
- 使用 GDAL 将 DXF 块从一个文件导入到另一个文件
- 如何将COM .tlb文件导入具有相对路径C++文件中?
- C++将分隔文件导入矢量
- 将 .ui 文件导入 Qt5 C++时出错"was not declared in this scope"
- 为什么我无法将头文件导入到其中一个头文件中的库中?
- 将 Obj 文件导入 vtk
- 在编译时将文本文件导入原始字符串文本
- 从文件导入注册表
- QComplete-如何从文件导入数据
- 如何从 .so 文件导入 python 模块
- 将.csv文件导入 QT GUI 上的 sqlite3 数据库表
- 这是将csv文件导入MS Access的正确SQL语法吗
- 从文本文件导入的不同线类型创建变量
- 如果使用LoadLibrary显式链接dll,则列出从PE文件导入的函数
- 如何将CSV文件导入QTableWidget
- 使用C++从MAT文件导入三维阵列
- C++ 操作方法:从.txt或.csv文件导入数值变量
- 为什么我将数字数据从文本文件导入二维数组的代码不起作用
- 将值从*.dat文件导入数组