You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言遍历const char数组获取每个字符ASCII值的实现疑问

问题解答

你给出的代码存在多处错误,无法实现遍历数组获取每个字母ASCII值的需求,具体问题如下:

  • 语法错误:const char array[] = "name" 语句末尾缺少C语言语句结束标识分号;
  • 数组索引使用错误:array['i'] 中的'i'是字符字面量,对应的ASCII值固定为105,远超过你定义的数组长度,应该直接使用变量i作为索引,即array[i]
  • 输出格式符使用错误:%s是字符串输出格式符,要求传入字符指针参数;如果要输出字符对应的十进制ASCII值,应该使用%d格式符,传入字符本身即可。

正确实现示例

#include <stdio.h>

int main() {
    const char array[] = "name";
    // 用sizeof(array) - 1自动计算字符串有效长度,无需硬写固定值
    for (int i = 0; i < sizeof(array) - 1; i++) {
        printf("字符%c的ASCII值为:%d\n", array[i], array[i]);
    }
    return 0;
}

运行后输出结果如下:

字符n的ASCII值为:110
字符a的ASCII值为:97
字符m的ASCII值为:109
字符e的ASCII值为:101

内容的提问来源于stack exchange,提问作者John

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 20:18:00