[问题] stringstream内有数字和字符

楼主: cchou0114 (嘻嘻)   2016-11-18 12:44:19
请教各位版上大大
当stringstream里有int和
char型别的资料
要怎么各别输出呢?
以下是我的程式
#include <iostream>
#include <string>
#include <sstream>.
using namespace std;
int main()
{
int a = 92;
string b = 'b';
stringstream ss;
ss << a;
ss << b;
return 0;
}
如果我额外用一个string temp;
temp = ss.str();
cout << temp;
如此一来 会直接输出92b 且92会变成char而不是int
有什么方法可以输出
92b 且92是原来的int b是原来的char型别
谢谢
作者: uranusjr (←這人是超級笨蛋)   2016-11-18 12:48:00
我觉得你是不是误会 stringstream 的用途了...
楼主: cchou0114 (嘻嘻)   2016-11-18 12:52:00
我知道它是用来做型别转换的 不过我用他来存一段有int和char的文字
作者: Caesar08 (Caesar)   2016-11-18 13:28:00
cin怎么用,stringstream就怎么用
楼主: cchou0114 (嘻嘻)   2016-11-18 13:38:00
楼上c大 不过这样的话 92会变成9跟2两个字符 还是没有办法能让他输出成92这个int
作者: pttworld (批踢踢世界)   2016-11-18 14:02:00
在字串级就必须要区别了。
楼主: cchou0114 (嘻嘻)   2016-11-18 14:14:00
p大能说得更详细一点吗 小的不是很理解这句话的意思…
作者: a21802 (NEC)   2016-11-18 14:17:00
做完字符判断 再合并之类的?
作者: ilms49898723 (LittleBird)   2016-11-18 15:34:00
你要不要讲清楚你要这样的用途是什么同一楼,光这样我觉得你误会stringstream的用途
作者: pttworld (批踢踢世界)   2016-11-18 15:54:00
结果是数字和字符不同类别,一开始就要使区隔。而不是混在一起然后说转换不对。结果指的是程式写之前的资料格式要先定义。你的问题是当使用"92b"时如何取出92存回整数型态。可以先练习"92"怎么转回整数,ascii code。
楼主: cchou0114 (嘻嘻)   2016-11-18 18:20:00
各位前辈 问题解决了 原来我搞错方向了 谢谢各位的解说

Links booklink

Contact Us: admin [ a t ] ucptt.com