gpt4 book ai didi

c - C中int和char之间的数值运算

转载 作者:太空宇宙 更新时间:2023-11-04 07:55:33 24 4
gpt4 key购买 nike

我想知道数据是如何存储的,因为在示例之外,直觉很弱。

我相信,任何值(value)都有它的数字识别;因为 'a' 的值为 48;所以我假设,在任何情况下我都可以将 48 递减为“a”(例如(100 - 'a' == 52))。

现实似乎不一样。

所以;

我什么时候可以使用 'a' 递减以获得类似 int 的值?我应该在这里使用什么,这样看起来更直观?

...

程序几乎没有完成,但是函数需要一个字符数组,它需要从一个字符中获取值 (3) 的整数。/* 对于这个场景 */

谢谢你的帮助!

/* command reader */
int cr (char a[])
{
printf("%s\n", a);

/* command sequence */
char co[350]; /* <-- change later */

for (int cri = 0, coi = 0; a[cri]; cri++, coi++)
{
printf("%c ", a[cri]);

co[coi] = a[cri];
}

int ec (char co[])
{
printf("\n%s co\n", co);
printf("\n%c co1\n", co[1]);

co[1] = co[1];

printf("\n basic: %d\n\n", co[1]); /* 51 */

co[2] = co[1] - 'a';

printf("\n charred out: %d\n\n", co[2]); /* -46 */

co[3] = co[1] - 48;

printf("\n numbered out: %d\n\n", co[3]); /* 3 */

return 0;
}

ec(co);

return 0;
}

cr("F3 R B");

最佳答案

'a' 的“值”,即它的数值表示,实际上取决于字符集。在大多数情况下,这是 American Standard Code for Information Interchange (ASCII)或前 128 个代码点与 ASCII 相同的字符集。但是,'a' 的 ASCII 值实际上是 97 而不是 48。

关于c - C中int和char之间的数值运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50376774/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com