Am_yz 2023-03-30 19:36 采纳率: 91.3%
浏览 24
已结题

关于指针数组的疑难问题

求老哥帮我看看代码,我实在看不出错在哪里,程序没报错,一运行经报错,哭了啊!!

题目:定义一个指针数组,其中每个指针指向一个字符型变量,使用循环输入一个字符串,并将字符串中所有字符的 ASCII 码值存储在指针数组中,然后输出这些 ASCII 码值。

int main() {
    char str[100]; // 定义一个字符数组
    char* ptr[100]; // 定义一个指针数组
    int i; // 循环计数器

    printf("请输入一个字符串:");
    scanf_s("%s", str); // 输入一个字符串

    // 将每个字符的 ASCII 码值存储在指针数组中
    for (i = 0; str[i] != '\0'; i++) {
        ptr[i] = &str[i];
    }

    // 输出指针数组中每个指针所指向的字符的 ASCII 码值
    printf("字符串中所有字符的 ASCII 码值:");
    for (i = 0; ptr[i] != NULL; i++) {
        printf("%d ", *(ptr[i]));
    }
    return 0;
}

我问CHatGPT了,他和我一样的问题,也给不出解决问题,或许我只是初学,不知道怎么问问题

img

img

  • 写回答

3条回答 默认 最新

  • threenewbee 2023-03-30 20:53
    关注
    scanf_s("%s", str,);
    ->
    scanf_s("%s", str, 99);
    
    char* ptr[100];
    ->
    char* ptr = (char *)malloc(100*sizeof(char));
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月7日
  • 已采纳回答 3月30日
  • 修改了问题 3月30日
  • 修改了问题 3月30日
  • 展开全部

悬赏问题

  • ¥15 输出区间内所有的完数的个数。 要简单点的程序
  • ¥15 asp.core 权限控制怎么做,需要控制到每个方法
  • ¥20 while循环中OLED显示中断中的数据不正确
  • ¥15 这个视频里的stm32f4代码是怎么写的
  • ¥15 JNA调用DLL报堆栈溢出错误(0xC00000FD)
  • ¥15 请教SGeMs软件的使用
  • ¥15 自己用vb.net编写了一个dll文件,如何只给授权的用户使用这个dll文件进行打包编译,未授权用户不能进行打包编译操作?
  • ¥50 深度学习运行代码直接中断
  • ¥20 需要完整的共散射点成像代码
  • ¥15 编写vba代码实现数据录入工作