visual c++6.0中创建一个win32控制台应用程序,一个hello world程序,将helloworld.cpp文件内容替换

//helloworld.cpp:Definestheentrypointfortheconsoleapplication.//#include"stdafx.h"#in... // helloworld.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "iostream.h"
#include "cstring"

int main()
{
char str1[20],str2[10];
cout<<"输入少于9个字符"<<'\n';
cout<<"str1=";
cin >>str1;
cout<<"输入少于9个字符"<<'\n';
cout<<"str2=";
cin >>str2;
cout<<"输出字符串"<<"\n";
cout<<"str1="<<str1<<"\n";
cout<<"str2="<<str2<<"\n";
cout<<"计算str1的长度"<<"\n";
cout<<"长度="<<strlen(str1)<<"\n";
cout<<"把字符串str2衔接到字符串str1后面"<<"\n";
cout<<strcat(str1,str2)<<"\n";
printf("Hello World!\n");

return 0;
}

问题是 printf("Hello World!\n");语句怎么不见执行啊
编译无错误无警告,可以执行程序,就不见 printf("Hello World!\n");执行,将此句放在 char str1[20],str2[10];前可以看见其执行了,你们说怪不怪
用Using namespace std;不行,我亲自试过了,错误如下
error C2871: 'std' : does not exist or is not a namespace
执行 cl.exe 时出错.
展开
 我来答
百度网友1e944cd
2010-08-19 · TA获得超过989个赞
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:316万
展开全部

printf("Hello World!\n");执行了,只不过很早就打印出来。如图:

TT_RonG
2010-08-19 · TA获得超过156个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:238万
展开全部
把printf("Hello World!\n");前面的cout<<strcat(str1,str2)<<"\n";
改为:cout<<strcat(str1,str2)<<endl;

然后就可以了。

之所以改成endl是因为endl除了有换行功能外,还有刷新缓冲区的功能

而“\n”仅仅是换行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
andy_reb
2010-08-19 · TA获得超过232个赞
知道小有建树答主
回答量:143
采纳率:0%
帮助的人:60.6万
展开全部
不要纠结于此问题,这是编译器的问题,你估计用的VC6.0
不过倒是可以说说这两者的区别:
当你用 cout 输出的时候,系统并不是将其送入屏幕,而是转存到缓冲区,待缓冲区满时一次性显示
解决的办法是,调用一次 cout < < flush;
C语言中为 fflush(stdout);
还有就是 cout < < "\n"; 和 cout < < endl; 的区别
前者仅仅只将回车符送入输出缓存,而后者多一个操作,即立即显示

而printf就是直接将其送入屏幕
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丨天灬娇子
2010-08-19
知道答主
回答量:26
采纳率:0%
帮助的人:0
展开全部

你把头文件改成

#include "iostream"

#include "cstring"

using namespace std;

再试试,就可以了···

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式