c++ int to char
c++ int to char
我有一个整数列表 i ([0,255]),我想将这些整数转换为字符。
int i;
char c = (char)i;
当我打印 c 时(当 i=0 时),我没有得到相应的 ascii 符号。如何正确进行映射?
ASCII 0 没有符号。 所有小于 32 的 ASCII 值都是控制字符。
您正在将 ASCII 值与 int 值混合...看看 ASCII 表,你就会明白。要打印"0",您需要打印值 48(十进制)。要打印从 0 到 9 的值,您只需在 int 值上加 48,您将获得正确的 ASCII 代码。要打印比一位多以上的值,您需要从一个整数到几个 ASCII 代码的某种转换。谷歌搜索应该找到这样的功能。
我不相信值 0 有一个有意义的 ASCII 符号。这是一个空字符,不应打印任何内容。例如,为什么不尝试在i = 97
('a')时打印一个值呢?
如果您检查 ASCII 表,您会发现并非每个 ASCII 字符都具有有意义的打印值。
相关文章:
- 如何解决"invalid conversion from 'char' to 'const char*'"
- Writing Char to Arduino EEPROM
- memcpy unsigned char to int
- 如何修复C++中的'cannot convert char to char*'错误?
- 返回"Cannot convert from 'std::ofstream {aka std::basic_ofstream<char>}' to bool"错误
- 使用strupr和strlwr时如何解决错误"invalid conversion of char to char*"?
- C++ cast char * to unsigned char
- Char to Int - C++
- Qt char* to QString
- 找不到错误"invalid conversion from char to const char*"的解决方案
- nameless char[] to std::string& reference
- atoi() - from char to int
- Unicode const char* to JString using JNI and C++
- 了解错误"error: cannot convert ‘char**’ to ‘const char*’ for argument ‘1’ to ‘double atof(const char*)’"
- const char* to LPCWSTR in Qt
- "incompatible types in assignment of 'char' to 'char'[100]"我使用的是 strcat 对吗?
- const char * to vector<unsigned char> Initalisation
- c++ const char* to char*
- 引起'Cannot convert from const char * to char *'
- char to char* issues