目录

cin和cout输入输出

TRACE 调试输出

1
TRACE(_T("大漠版本号:%s\n"),dm->Ver());

cin和cout输入输出

适用于控制台

简单的输入输出代码示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
#include<iostream>
using namespace std;
int main(){
    int x;
    float y;
    cout<<"Please input an int number:"<<endl;
    cin>>x;
    cout<<"The int number is x= "<<x<<endl;
    cout<<"Please input a float number:"<<endl;
    cin>>y;
    cout<<"The float number is y= "<<y<<endl;   
    return 0;
}

运行结果如下(↙表示按下回车键):

Please input an int number:
8↙
The int number is x= 8
Please input a float number:
7.4↙
The float number is y= 7.4


cin 连续输入示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
#include<iostream>
using namespace std;
int main(){
    int x;
    float y;
    cout<<"Please input an int number and a float number:"<<endl;
    cin>>x>>y;
    cout<<"The int number is x= "<<x<<endl;
    cout<<"The float number is y= "<<y<<endl;   
    return 0;
}

运行结果:

Please input an int number and a float number:
8 7.4↙
The int number is x= 8
The float number is y= 7.4

信息提示框 MessageBox 与 AfxMessageBox

MessageBox 信息提示框

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
//原型
int MessageBox(
  HWND hWnd, 	//hWnd:父视窗(Parent Window)Handle如果为NULL则设为非强制回应模式(Modeless)
  LPCTSTR lpszText,	//lpszTex:表示在讯息框内显示的内容
  LPCTSTR lpszCaption = NULL,	//lpszCaption:讯息框标题(预设为空)
  UINT nType =MB_OK 	//nType:讯息框的风格
);

//实例

CString Stemp;
Stemp.Format(_T("%d"),a);
MessageBox(Stemp);

MessageBox("这是最简单的讯息框");
MessageBox("这讯息框是自订标题", "这是标题");
MessageBox("这讯息框有确定取消按钮", "这是标题", MB_OKCANCEL );
MessageBox("这讯息框有警告图示", "这是标题", MB_ICONEXCLAMATION );
MessageBox("这讯息框有确定取消按钮搭配警告图示", "这是标题", MB_ICONEXCLAMATION | MB_OKCANCEL );
  

AfxMessageBox 信息提示框

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
//双原型:
int AfxMessageBox(
  LPCTSTR lpszText,	//lpszText:表示在讯息框内显示的内容,讯息框的标题为应用程式名称。
  UINT nType = MB_OK,	//nType:为讯息框中显示的按钮和图示的组合,可以使用 | () 来组合各种风格。
  UINT nIDHelp = 0 	//nIDHelp:讯息的说明内容ID,0表示使用系统预设说明内容。
);
int AFXAPI AfxMessageBox( 
  UINT nIDPrompt,	//nIDPrompt:表示在讯息框内显示的字串表(String Table)资源ID,使用时会自动从字串表载入字串。
  UINT nType = MB_OK, //同上
  UINT nIDHelp = (UINT) 1	//同上
);


//实例

#define IDS_STR_TABLE "这是使用字串表";
CString str = "这是直接使用字串";

AfxMessageBox(IDS_STR_HELLO);
AfxMessageBox(str);
AfxMessageBox("这是加入按钮及图示的讯息框", MB_YESNO | MB_ICONSTOP);

下列属性两者皆适用:

按钮风格(nType):

 MB_ABORTRETRYIGNORE 讯息框中显示Abort、Retry、Ignore按钮

 MB_ABORTRETRYIGNORE 讯息框中显示Abort、Retry、Ignore按钮

 MB_OK 显示OK按钮

 MB_OKCANCEL 显示OK、Cancel按钮

 MB_RETRYCANCEL 显示Retry、Cancel按钮

 MB_YESNO 显示Yes、No按钮

 MB_YESNOCANCEL 示Yes、No、Cancel按钮

图示风格(nType):

 MB_ICONINFORMATION 显示一个i图标,表示提示

 MB_ICONEXCLAMATION 显示一个惊叹号,表示警告

 MB_ICONSTOP 显示手形图标,表示警告或严重错误

 MB_ICONQUESTION 显示问号图标,表示疑问

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/1439976256-4063247046-20211218192608436.jpg

回传值(对应不同按钮点选):

 IDABORT 按下放弃(Abort)

 IDCANCEL按下取消(Cancel)

 IDIGNORE 按下忽略(Ignore)

 IDNO 按下否(No)

 IDOK 按下确定(OK)

 IDRETRY 按下重试(Retry).

 IDYES按下是(Yes).