【发布时间】:2017-04-05 11:32:37
【问题描述】:
我需要得到一个字符的十进制 ascii 值。到现在用这个打印(避免负值)没有问题。
char x;
cout << dec << (int)x << endl;
当我想将dec 值分配给int 变量时,问题就出现了,dec 不能在cout 之外使用。任何建议如何做到这一点?请注意,(int) char 不起作用,因为我也会得到负值,我想避免它们。
我已经尝试过使用atoi 和unsigned int,但到目前为止还没有成功。
【问题讨论】:
-
cout << (int) x;不是(int)char -
如果
x<0,则不是ASCII。 -
为什么是
<< dec?我不知道为什么,但我有一个大小为 1024 的char的array。如果我不输入<<dec,我会得到负值。我正在使用 VB2015 -
“十进制 ASCII 值”到底是什么意思? ASCII 码不是十进制、十六进制或二进制,它们是整数。
-
@Capie 十进制和十六进制是不同的写下 相同数字的方法。
标签: c++ char type-conversion ascii