gpt4 book ai didi

C 整数和字符。奇怪的行为

转载 作者:太空宇宙 更新时间:2023-11-04 05:46:54 27 4
gpt4 key购买 nike

我正在学习 C 语言,但我遇到了一个我自己似乎无法解决的问题。我有一个简单的循环,我将每个单词中所有字符的 ascii 值相加。

    char char_array[100];
int lexicographical_values[20];
int i, j = 0;
for( i = 0; i <strlen(char_array); i++) {
if(char_array[i] == ' ')
j++;
lexicographical_values[j] += (int)char_array[i];
}

然后,如果我在循环中输出 lexicographical_values 数组

  printf("%d word is: %d \n", i, lexicographical_values[i]);

我得到每个单词的正确数字(例如:dd = 200 等等)

但如果我实际查看数组中每个元素的值,我会得到远非正确的大数字。

问题是,如何获取正确的值,printf如何获取正确的值?

谢谢

最佳答案

您还没有初始化 lexicographical_values 数组。您可以通过以下方式初始化它:

int lexicographical_values[20] = {};

每次您在输出中看到大数字时,请检查未初始化的变量。

关于C 整数和字符。奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2046278/

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