关于string数组赋值
  • 板块学术版
  • 楼主yuanqichen
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/10/24 19:34
  • 上次更新2024/10/24 20:29:27
查看原帖
关于string数组赋值
1384828
yuanqichen楼主2024/10/24 19:34
    for(int i=1;i<n;i++){
        for(int j=0;j<n;j++){
            s[i][j]=s[0][(j+i)%n];
        }
    }

以上代码会造成越界访问。因为string数组不是char二维数组,如果一位一位赋值会导致计算机不知道字符串有多长,使字符串被开得很短,如果数据范围大会越界。可以改成:

  for(int i=1;i<n;i++){
      for(int j=0;j<n;j++){
          s[i]+=s[0][(j+i)%n];
      }
  }
2024/10/24 19:34
加载中...