2014-10-18 58 views
2

我需要使用我的C++程序(1cm x 1cm大小)在Linux终端打印一个填充正方形。我尝试使用ASCII 254(■),但是在终端中,它将打印为垃圾字符。我不确定如何使用C++打印扩展ASCII字符。以下是我尝试打印扩展ASCII的两种方法。但不成功。在控制台中打印一个填充的正方形

首先方法

for(int i=128; i< 255; i++) 
{ 
std::cout << static_cast<char>(i) << std::endl; 
} 

第二方法

unsigned char temp = 'A' 
for(int i=65; i< 255; i++) 
{ 
std::cout << temp++ << std::endl; 
std::wcout << temp << std::endl; 
} 

任何建议或替代的主意?

+0

是否控制台环境支持扩展ASCII字符? – Ayb4btu 2014-10-18 09:34:01

+0

如何知道它是否支持? – 2014-10-18 09:40:32

+0

我不是在Linux中看到的,但希望这篇文章能够帮助:[如何获取终端的字符编码](http://stackoverflow.com/questions/5306153/how-to-get-terminals-character-encoding) 。 – Ayb4btu 2014-10-18 09:42:49

回答

1

或者尝试只:

std::cout << (char)254u; 
1

试试这个:

char t = -2; 
cout << t;