读书人

C++格式化输入输出有关问题

发布时间: 2012-02-24 16:30:38 作者: rapoo

C++格式化输入输出问题
有没有什么办法能直接在C++里用iostream输入/输出带有分隔符的数据
比如:
a = 1000432
输出1,000,432
输入类似
谢谢

[解决办法]
int i=10032;
char * p = new char[123] ;
memset(p,0,123);
sprintf(p, "%d ",i);
int Len = strlen(p);
int out = Len%3;
int l=0;
for(;l <out;++l)
{
std::cout < <p[l];
}
std::cout < < ', ';
for ( ;l <Len ;)
{
std::cout < <p[l];
l++;
std::cout < <p[l];
l++;
std::cout < <p[l];
l++;
std::cout < < ', ';
}
[解决办法]
试试int i = 0;
locale chs( "zh_CN ");
cin.imbue(chs);
cout.imbue(chs);
cin > > i;
cout < < i;
呵呵,devcpp就不支持了,它没带多国语言支持。
[解决办法]
locale chs( "english ");吧
[解决办法]
locale def( "english ");
cin.imbue(def);
cout.imbue(def);

int temp;
cin> > temp;
cout < <endl < <temp < <endl;
[解决办法]
可以把数字分解为单个数字,比如1234,分解为1,2,3,4。然后存储在数组或者vector,再循环控制输出

读书人网 >C++

热点推荐