在MFC之中,CFile 用来处理正常的文件I/O 动作。CStdioFile 派生自CFile,一个CStdioFile 对象代表以C runtime函数fopen所开启的一个stream文件。Stream文件有缓冲区,可以文字模式(预设情况)或二进位模式开启。
CString 对象代表一个字符串,是一个完全独立的类。
我的例子用来计算小于100的所有费伯纳契数列(Fabonacci sequence)。费伯纳契数列的计算方式是:
1. 头两个数为 1。
2. 接下来的每一个数是前两个数的和。
以下便是MFCCON.CPP 内容
#0005 // Build : cl /MT mfccon.cpp (/MT means Multithreading)
#0006
#0007 #include <afx.h>
#0008 #include <stdio.h>
#0010 int main()
#0011 {
#0012 int lo, hi;
#0013 CString str;
#0014 CStdioFile fFibo;
#0016 fFibo.Open("FIBO.DAT", CFile::modeWrite |
#0017 CFile::modeCreate | CFile::typeText);
#0019 str.Format("%s\n", "Fibonacci sequencee, less than 100 :");
#0020 printf("%s", (LPCTSTR) str);
#0021 fFibo.WriteString(str);
#0023 lo = hi = 1;
#0025 str.Format("%d\n", lo);
#0026 printf("%s", (LPCTSTR) str);
#0027 fFibo.WriteString(str);
#0029 while (hi < 100)
#0030 {
#0031 str.Format("%d\n", hi);
#0032 printf("%s", (LPCTSTR) str);
#0033 fFibo.WriteString(str);
#0034 hi = lo + hi;
#0035 lo = hi - lo;
#0036 }
#0038 fFibo.Close();
#0039 return 0;
#0040 }