MFC中已经添加好了C语言编写的文件,如何调用其中的函数和其中的计算出的数据

MFC中已经添加好了C语言编写的文件,如何调用其中的函数和其中的计算出的数据,第1张

可以按照以下方式进行,实行时不分先后。

一、调用函数部分。

1 引入头文件。头文件在C语言中,负责声明函数,及定义相关数据结构等功能。要调用其它C文件中的函数,标准的做法是引用头文件。

2 如果不存在头文件,需要自行编写,也可以在引用文件中自行声明函数。不过后一种并不正规。

3 在声明或引用头文件后,就可以直接调用其函数了。

二、获取计算结果。

1 通过函数返回值获取结果。

2 通过函数参数获取结果。

3 在其它C文件中奖结果存入全局变量,然后通过全局变量获取结果。

以上三种方式均可以实现目的,具体使用取决于C文件的编写方式。对于简单数据类型,且结果单一的情况,一般使用第一种。复杂数据类型,或者需要的结果可能为多个变量的情况,一般使用第二种。不推荐使用第三种,尤其在多线程 *** 作情况下。

用的较多的是:CWnd::GetDlgItem再使用CWnd::GetWindowText还有一个是 CWnd::GetDlgItemText

这些都是比较常用的、

例如获取一个EDIT控件的文本,ID是IDC_EDITRESULT

第一种方式:

CString str_edit;

GetDlgItem(IDC_EDITRESULT)->GetWindowText(str_edit);

第二种方式:

CString str_edit;

GetDlgItemText(IDC_EDITRESULT,str_edit);

具体看MSDN

文件读写的最普通的方法是直接使用CFile进行,如文件的读写可以使用下面的方法:

//对文件进行读 *** 作

char sRead[2];

CFile mFile(_T("usertxt"),CFile::modeRead);

if(mFileGetLength()<2)

return;

mFileRead(sRead,2);

mFileClose();

//对文件进行写 *** 作

CFile mFile(_T("usertxt "), CFile::modeWrite|CFile::modeCreate);

mFileWrite(sRead,2);

mFileFlush();

mFileClose();

虽然这种方法最为基本,但是它的使用繁琐,而且功能非常简单。我向你推荐的是使用CArchive,它的使用方法简单且功能十分强大。首先还是用CFile声明一个对象,然后用这个对象的指针做参数声明一个CArchive对象,你就可以非常方便地存储各种复杂的数据类型了。它的使用方法见下例。

//对文件进行写 *** 作

CString strTemp;

CFile mFile;

mFileOpen("d:\\dd\\tryTRY",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite);

CArchive ar(&mFile,CArchive::store);

ar<<arClose();

mFileClose();

//对文件进行读 *** 作

CFile mFile;

if(mFileOpen("d:\\dd\\tryTRY",CFile::modeRead)==0)

return;

CArchive ar(&mFile,CArchive::load);

 ar>>strTemp;

arClose();

mFileClose();

CArchive的 << 和>> *** 作符用于简单数据类型的读写,对于CObject派生类的对象的存取要使用ReadObject()和WriteObject()。使用CArchive的ReadClass()和WriteClass()还可以进行类的读写,如:

//存储CAboutDlg类

arWriteClass(RUNTIME_CLASS(CAboutDlg));

//读取CAboutDlg类

CRuntimeClass mRunClass=arReadClass();

//使用CAboutDlg类

CObject pObject=mRunClass->CreateObject();

((CDialog )pObject)->DoModal();

如果你要进行的文件 *** 作只是简单的读写整行的字符串,我建议你使用CStdioFile,用它来进行此类 *** 作非常方便,如下例。

CStdioFile mFile;

CFileException mExcept;

mFileOpen( "d:\\temp\\aabat", CFile::modeWrite, &mExcept);

CString string="I am a string";

mFileWriteString(string);

mFileClose();

追加到原有txt文件尾

mFileOpen(temptxt,CFile::modeCreate|CFile::modeWrite|CFile::modeNoTruncate);

if(mFile==NULL)

return false;

mFileSeekToEnd();

mFileWriteString(s);

fileClose();

以上就是关于MFC中已经添加好了C语言编写的文件,如何调用其中的函数和其中的计算出的数据全部的内容,包括:MFC中已经添加好了C语言编写的文件,如何调用其中的函数和其中的计算出的数据、vs2010中,MFC基于对话框的编程,在一个对话框中想要获取其他对话框中变量的值,要怎么做、MFC 读取文件函数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9686437.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存