好吧,标题几乎总结了它。我想在 C++ 中使用 asc("0") 之类的东西,并且想让程序平台独立,所以不想使用 48!任何帮助表示赞赏。
问问题
26935 次
3 回答
9
您可以简单地使用单引号来制作字符常量:
char c = 'a';
字符类型是数字类型,因此没有真正需要asc
和chr
等价物。
这是一个打印字符串字符值的小例子:
#include <stdio.h>
int main(int argc, char **argv) {
char str[] ="Hello, World!";
printf("string = \"%s\"\n", str);
printf("chars = ");
for (int i=0; str[i] != 0; i++)
printf("%d ", str[i]);
printf("\n");
return 0;
}
输出是:
string = "Hello, World!"
chars = 72 101 108 108 111 44 32 87 111 114 108 100 33
于 2011-06-19T21:11:02.037 回答
3
''
在 C 和 C++ 中,如果您使用由而不是包围的字符,""
则意味着您已经在处理其原始二进制值。
现在,在 C 和 C++ 中,"0"
是一个字面量的两字节空终止字符串:'0'
和'\0'
. (ASCII 48 ASCII 0)
var[0]
您可以通过在“”空终止字符串上使用或使用转换例程之一来实现您想要的。(atoi()
在 C 中,stringstream
在 C++ 中的库)
于 2011-06-19T21:12:07.903 回答
0
您将通过写入:'0' 获得 0 字符的 ASCII 值。
同样,您需要的每个 char 都使用 'char'。
于 2011-06-19T21:13:03.160 回答