繁体   English   中英

C ++ wchar_t错误未定义

[英]C++ wchar_t error undefined

我是c ++的新手。

我知道wchar_t很宽泛。

以下代码有什么问题? 我没有包含适当的库吗?

#include<iostream.h>
#include<conio.h>
void main()
{
wchar_t *s=L"Hello, World";
cout<<s;
getch();
}

很简单,停止使用Borland Turbo C - 它在我20年前第一次拿起3.1版时已经过时了。 那个时代的Turbo C没有iostream(没有扩展名)文件,因为它是在stl之前发布的。 在此之前,函数确实在iostream.h中找到

因此,我希望它也没有定义wchar_t - 我甚至不记得那时是否有多字节的东西,unicode当然不是一个考虑因素..

为了它的价值,我还有5张1/4“软盘上的Turbo C副本 - 是的!软盘上的软盘......从本世纪开始获得编译器!

获取Code :: Blocks with MinGW(约70MB下载),或Visual Studio Express(几百),地狱 - 甚至DevCpp也不如Turbo C.

(哦,你已经告诉我,通过包含conio.h,你绝对有可能选择你的编译器)

这里有很多问题,虽然都很小:

#include<iostream.h>

这应该是#include <iostream>标准C ++头文件末尾没有.h

void main()

main应该返回一个int ,而不是void

wchar_t *s=L"Hello, World";
cout<<s;

要编写一个宽字符串,你想使用std命名空间中的wcout ,所以这应该是这样的:

std::wcout << s;

请注意getch

getch();

...很常见,但从技术上讲并非标准,因此您无法在真正的可移植代码中使用它。 如果你只关心Windows,那可能不是你的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM