m0_73680907 2022-11-20 20:18 采纳率: 100%
浏览 13
已结题

程序运行的最后出现Stack around the variable 'm' was corrupted.

问题遇到的现象和发生背景

程序运行的最后出现Stack around the variable 'm' was corrupted.
怎么解决

用代码块功能插入代码,请勿粘贴截图
#include<stdio.h>
#include<string.h>
int main()
{
    char v[10000],m[10000],a;
    int i,n,j;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
        scanf("%s",v);
        
        for(j=0;j<=(strlen(v));j++)
            m[strlen(v)-1-j]=v[j];
        
        for(j=0;j<=(strlen(v));j++)
        if(v[j]!=m[j])
        {break;}
            if (j == strlen(v))
            printf("Yes\n");
        else
            printf("No\n");
            }}

运行结果及报错内容

Stack around the variable 'm' was corrupted.

我想要达到的结果

检测是否为回文字符串

  • 写回答

1条回答 默认 最新

  • 浪客 2022-11-20 22:27
    关注

    j<=(strlen(v)) 这里都改成j<(strlen(v)),=的话下标越界了。另外把(strlen(v))的结果存到变量了使用。提高效率。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月29日
  • 已采纳回答 11月21日
  • 创建了问题 11月20日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵