题目

编写函数接收一个 const char * 常量指针,以只读方式遍历并逐字符输出字符串内容。

输入格式:输入一行字符串。

输出格式:输出该字符串的内容,末尾换行。

数据范围与约定:字符串长度不超过 500。

思路与算法

1. const 与指针的语义
const char *p 表示指向的内容是只读的常量字符,编译器会阻止任何通过 *p = 'x' 修改原内容的非法操作。

2. 提高接口安全性
只读遍历操作传递 const 指针是良好的 C 语言工程规范,防止意外篡改输入字符串。

完整程序

#include <stdio.h>

int main(void)
{
    char s[500];
    if (scanf("%499s", s) != 1) {
        return 1;
    }

    // 指针遍历字符串:*p 非零即未遇到 '\0' 结束符
    for (const char *p = s; *p; p++) {
        printf("%c\n", *p);
    }
    return 0;
}

运行示例

输入:

hi

输出:

h
i