2017-11-01 14 views
2

。しかし、私がこれを使用した場合:非常に簡単なプログラムは、私はこの非常に簡単なプログラムを作ったのDev Cにコンパイル++はなく、Visual Studioで

int a; 
    scanf_s("%i", &a); 
    int tab[a]; 

Visual Studio 2015にはエラーがあります。私は何が間違っているのか分かりません。

+4

一切のVLAは、Visual Studioではありませんに答えていることに注意してください。これが本当に必要な場合は、 'int tab [a];'の代わりに 'int * tab = alloca(a * sizeof(* tab)')を使うことができます。 '#include ' –

+0

VLA =>可変長配列 –

+0

それでは、キーボードからタブの長さを宣言するにはどうすればいいですか?私は最初のコメントで提案したことをscanf_s – Finer

答えて

1

可変長アレイ(VLA)はC99標準の一部ですが、C++ 11/C++ 14標準の一部ではないため、Visual C++コンパイラでは実装されていません。 "C"コンパイラとして、Visual C++は、C++ 11のリファレンスで必要とされるC11標準ライブラリの部分に準拠しています。

この質問の核心は、すでにhere

関連する問題