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

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

新規登録して質問してみよう
ただいま回答率
85.48%
C++

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

Q&A

解決済

1回答

1307閲覧

c++をvisual studio community 2017でデバッグするとエラーがでます

aba

総合スコア14

C++

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

0グッド

0クリップ

投稿2019/06/09 11:46

編集2019/06/09 12:27

visual studio community 2017でデバッグするとエラーがでます。

エラー箇所はvectorのソース部分で
_DEBUG_ERROR("vector subscript out of range");
のあたりで止まっています。呼び出し履歴を見ると以下のソース文の
list[aaa] = 2;
からvectorのソースが呼び出されているようです。
何回かデバッグしようとしてもエラーがでてコンパイルできません。
以下のソース文に何か問題があるのでしょうか?

ちなみにvectorのソースとはもともとvisual studioに最初から入っているもので自分で作ったものではありません。

追記
「デバッグ」→「デバッグの開始」ボタンを押すとエラーが表示されてコンパイルできません。

list[aaa] = 2;

の部分をコメントアウトするとコンパイルできますが、この部分にどういう問題があるのか分かりません。
コンパイルできずにエラーが表示された時の画面をアップロードします。
https://d.kuku.lu/bdd4a15405

cpp

1#include <stdio.h> 2#include <string.h> 3#include <algorithm> 4#include <iostream> 5#include <string> 6#include <vector> 7#include <functional> 8#include <map> 9#include <iomanip> 10#include <math.h> 11#include <stack> 12#include <queue> 13#include <bitset> 14#include <cstdlib> 15#include <tuple> 16#include <cctype> 17#include <ctype.h> 18#include <set> 19#include <sstream> 20#include <time.h> 21using namespace std; 22//#define int long long 23#define rep(i,s,n) for(int i = s;i<n;i++) 24#define repe(i,s,n) for(int i = s;i<=n;i++) 25#define rrep(i,s,n) for(int i = (n)-1;i>=(s);i--) 26#define all(v) (v).begin(),(v).end() 27#define pb push_back 28#define fi first 29#define se second 30#define chmin(a,b) a=min((a),(b)) 31#define chmax(a,b) a=max((a),(b)) 32#define l1 list[index] 33#define l2 list[index - 1] 34#define l3 list[index + 1] 35#define iif(i,j) ((i<0 && j<0) || (i>0 && j>0)) ? true : false 36typedef long long ll; 37typedef pair<int, int>pint; 38typedef vector<int>vint; 39typedef vector<pint>vpint; 40typedef pair<pint, int> P1; 41typedef pair<int, pint> P2; 42typedef pair<pint, pint> PP; 43static const ll maxLL = (ll)1 << 62; 44const ll MOD = 1000000007; 45const ll INF = 1e18; 46const double PI = 3.14159265359; 47int ca[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; 48 49 50 51signed main() { 52int n; 53cin >> n; 54 55vector<int>list(1000,0); 56 57for (int i = 0; i < n; i++) { 58int aaa, b; 59cin >> aaa >> b; 60 61//int num = a + b; 62list[aaa] = 2;//←この部分をコメントアウトするとコンパイルできるが何か問題があるのか? 63 64} 65 66//int maxn = -1; 67//int ans; 68 69//for (int i = 0; i < list.size(); i++) { 70// if (maxn < list[i]) { 71// ans = i; 72// maxn = list[i]; 73// } 74 75//} 76 77 78//cout << ans << endl; 79 80 81 82 83 84getchar(); 85getchar(); 86return 0; 87}

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cateye

2019/06/09 12:42 編集

>「デバッグ」→「デバッグの開始」ボタンを押すとエラーが表示されてコンパイルできません。 コンパイルできないものがデバッグできるわけは無いと思いますが? 要素数を確認しましたか? また、aaaは要素内に収まっていますか? 画像の_posには何が入っていましたか? 不要なdefineやincludeは削除しましょう。ソースが非常に読みにくい・・・
aba

2019/06/09 12:48

実行時にコマンド引数に< C:\Users\user\Desktop\test.txt を設定しているのを忘れていました。 要するにコンパイルはきちんと出来ていたようです。
guest

回答1

0

自己解決

すみません。僕の勘違いでした。
プログラムの実行時のコマンド引数に

< C:\Users\user\Desktop\test.txt

を設定していたのを忘れていました。
デバッグ実行時にtext.txtの内容を読み取ってしまい、その値が大きいのでエラーが出ていたようです。
コマンド引数に何も渡さないように設定すると問題なくコンパイルできました。
お騒がせしました。

投稿2019/06/09 12:39

aba

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問