C++这段代码到底存在什么致命错啊?菜鸟发问啊~~

来源:百度知道 编辑:UC知道 时间:2024/06/16 15:28:57
#include<iostream>
#include<fstream>
#include<string>
int main()
{
zz:
cout<<"请输入要新建文件的名称及路径 :"<<endl;
string name;
cin>>name;
cout<<"输入已保存,正在处理中...."<<endl;
ofstream pp(name.c_str());
if(!pp)
{
cout<<"文件创建失败!"<<endl;
cout<<endl;
cout<<"again? 'y' or 'n' "<<endl;
string oo;
cin>>oo;
if(oo=="y")
{
goto zz;
}else{
return -1;
}
}
cout<<"文件创建成功!"<<endl;
return 0;
}

//我是想用string转换成C风格模式这种,char*这种不用,
//这里到底存在什么致命的错啊?
//有十八个错误,汗~~~~
/*错误信息:
--------------------Configuration: zzzzz - Win32 Debug--------------------
Compiling...
zzzzz.cpp
F:\C++实验文件\zzzzz.cpp(7) : error C2065: 'cout' : undeclar

其实就两个错
头文件应该加.h
要用到string型变量的时候就要加上命名空间using namespace std,
#include<iostream.h>
#include<fstream.h>
#include<string.h>
using namespace std;
因为c++本来是不支持string类型的,要用的话就要加上命名空间。

在void main()前面一行加上using namespace std;
要么把include里面都加上.h

楼下的不要答非所问,看好是“前面一行”,不是前面。
C++引用头文件要加上域的,std是标准库。也可以不用这种方法,直接这样:
#include<iostream.h>
#include<fstream.h>
#include<string.h>

#include<iostream>
#include<fstream>
#include<string>
using namespace std;

这是C++的头文件定义

#include <iostream.h>
#include <fstream.h>
#include <string.h>

这是c的头文件定义 ,在C++ 编译器中,是为扩展C 才这样定义的。。

main()方法的类型只能是void的,也就是无返回值类型,你可以理解为这个方法是整个程序的入口,也是整个程序的终结点,所以函数不需要返回值。
在main()方法里面调用其他方法时,如果被调用方法有返回值,则需要指明其返回类型。