如何在同一项目中混合使用c和c ++表单应用程序?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在同一项目中混合使用c和c ++表单应用程序?相关的知识,希望对你有一定的参考价值。
我想要一个C程序与C ++表单应用程序一起在同一项目中使用的程序。
例如:
当我单击按钮时,将输入的文本发送到C程序。在C ++表单应用程序中将文本输入到textBox内部。
C程序将通过文件操作将文本保存到计算机。
简单的例子:
textBox1="hello world"
button=clicked
string^ message = textBox->Text;
writerFunction(message);
void writerFunction(char m[50])
{
FILE *fp;
fp = fopen("text.txt","a");
fprintf(fp,"%s",m);
fclose(fp);
}
似乎您正在使用C ++ .NET(托管C ++)我猜这从指针运算符。在标准C ++中您将使用“ *”而不是“ ^”。如果我错了,请更正。
两个选项。
- 您正在使用托管c ++,因此您可以调用Win32 API,但会使您的工作更加辛苦。如果您仍然感兴趣,请检查此链接。它会让您入门。http://www.codeproject.com/Articles/9714/Win-API-C-to-NET
但是我建议您使用c ++ .NET方法将字符串保存在文件中。 Google将为您找到许多示例。一开始:
http://msdn.microsoft.com/en-us/library/19czdak8.aspx
- 如果您想使用旧样式的c ++,则可以将c和c ++混合使用而不会出现任何问题。您将需要将库导入到您的项目中。图书馆:
C-此处为stdio.h示例(http://en.m.wikipedia.org/wiki/C_file_input/output)
C ++-ofstream:要在文件上写入的流类
-ifstream:要从文件读取的流类
-fstream:用于读取和写入文件的流类。
此处有更多详细信息:http://www.cplusplus.com/doc/tutorial/files/
Windows API-您可以通过导入标头使用win32 APIWindows.h
祝你好运。如果您需要更多信息,请让我知道。
最简单的方法就是将您的C代码嵌入C ++。除非任何平台特定的东西阻碍了您,否则它应该可以工作。
如果确实需要两个(或多个)程序,并且它们应在OS中作为两个不同的进程运行,则应使用适当的进程间通信技术。我对.Net东西一无所知。但是,您也可以使用管道,共享内存,内存映射文件甚至套接字。
否则,您可以基于C创建动态库,并在C ++表单应用程序中调用该函数。
以上是关于如何在同一项目中混合使用c和c ++表单应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Objective c 中使用 JSON 服务发布数据
C#当用户控件变为活动状态时,如何自动刷新文本文件中的数据?
C ++如何将用户控件添加到表单中以便我可以在面板之间进行转换