質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

解決済

C++でライブラリに関するエラーが出てしまいました。

yuki_nam
yuki_nam

総合スコア20

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

1回答

0評価

0クリップ

336閲覧

投稿2022/03/06 14:10

前提・実現したいこと

VscodeでC++のプログラムを書いていたところ見たことのないエラーが出てしまいました。正しく実行できるようにしたいです。

発生している問題・エラーメッセージ

/home/keith/builds/mingw/gcc-9.2.0-mingw32-cross-native/mingw32/libstdc++-v3/include/bits/basic_string.h:1067: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::reference std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator[](std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::reference = char&; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = unsigned int]: Assertion '__pos <= size()' failed.

該当のソースコード

C++17

#include <bits\stdc++.h> using namespace std; int main(){ int h,w; cin >> h >> w; string a[h]; string b[h+2]; for(int i=0;i<h;i++){ cin >> a[i]; } for(int i=0;i<h+2;i++){ for(int j=0;j<w+2;j++){ if(i == 0 || i == h+1){ b[i][j] = '#'; } if(j == 0 || j == w + 1){ b[i][j] = '#'; } if(i > 0 && i < h+1){ b[i][j] = a[i-1][j-1]; } if(j > 0 && j < w+1){ b[i][j] = a[i-1][j-1]; } } } for(int i=0;i<h;i++){ cout << a[i]; cout << endl; } return 0; }

試したこと

私が初学者というのもありインターネットで調べましたが、これを解決する方法を見つけられませんでした。またbits/stdc++.hに原因があるのかと考えたためincludeするヘッダをiostream,stringの2つに分けましたが同じエラーメッセージが出ました。
このプログラムをコードテストサイトで通したところ正しく表示されました。

補足

今回多分ですがプログラムの内容とは直接関係ないためプログラムの内容については触れなくて大丈夫です。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。