注册 登录
编程论坛 VC++/MFC

请教关于cout和printf的一个问题~

zjjne 发布于 2012-07-08 13:29, 469 次点击
?
?
?
?
?
两段代码:

程序代码:
#include <iostream>
#include <windows.h>
using namespace std;

int main(int argc, char* argv[])
{
    int nSelect=::MessageBox(NULL,"Hello,Windows XP","Greetings",MB_OKCANCEL);
    if(nSelect==IDOK)
        cout<<"用户选择了“确定”按钮<<endl;
    else
        cout<<"用户选择了“取消”按钮<<endl;
    return 0;
}



程序代码:
#include "stdafx.h"
#include <windows.h>

int main(int argc, char* argv[])
{
    int nSelect=::MessageBox(NULL,"Hello,Windows XP","Greetings",MB_OKCANCEL);
    if(nSelect==IDOK)
         printf("用户选择了“确定”按钮\n");
    else
             printf("用户选择了“取消”按钮\n");
    return 0;
}



VC++6.0 编译,第一段代码出错,错误如下:


error C2001: newline in constant
error C2143: syntax error : missing ';' before 'else'
error C2001: newline in constant
error C2143: syntax error : missing ';' before 'return'



而第二段代码却没问题,正常运行
请问这是为什么?

??????
?????
?????
??????????
?
?
?
?

[ 本帖最后由 zjjne 于 2012-7-8 13:40 编辑 ]
3 回复
#2
习惯被动2012-07-08 13:53
你漏了后面的引号。
程序代码:
#include <iostream>
#include <windows.h>
using namespace std;

int main(int argc, char* argv[])
{
    int nSelect=::MessageBox(NULL,"Hello,Windows XP","Greetings",MB_OKCANCEL);
    if(nSelect==IDOK)
        cout<<"用户选择了“确定”按钮"<<endl;
    else
        cout<<"用户选择了“取消”按钮"<<endl;
    return 0;
}



补上就可以了
#3
zjjne2012-07-10 13:47
回复 2楼 习惯被动
晕...我检查了几遍都没发现...呵呵~
谢谢啦~
#4
习惯被动2012-07-10 13:55
回复 3楼 zjjne
呵呵
1