可変長配列ねぇ

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
non

可変長配列ねぇ

#1

投稿記事 by non » 16年前

雑談です

「とうや」さんのスレッド「周期境界条件を用いたプログラム」のプログラムを見ていたら
>int int_rnd(int N, int m, int *set)
>{
> int a,i,j,k,count;
> int blank[N];
>  以下略

なんてのがあるじゃないですか・・・いつのまにこんな事ができるようになったんだ・・・て
調べたらC99の新機能だとか。へぇーって。いやーあれば便利だよねって昔から思ってたんですよ。

それじゃ、試さなきゃと思い、BorlandC++5.0じゃ、きっと対応してないだろうと思い、やっぱ、
一番新しいのは、VC++2008だなと、試したらエラー。調べてみたら対応してないみたい。
試せるコンパイラないじゃないですか。なんだったら対応してるんですか?金無いけど。

たかぎ

Re:可変長配列ねぇ

#2

投稿記事 by たかぎ » 16年前

GCCなら使えます。
GCCでC99のソースをコンパイルするには、-std=c99または-std=gnu99オプションをつけますが、元々GCCの独自拡張として可変長配列がサポートされていましたので、オプションなしでも使えます。

non

Re:可変長配列ねぇ

#3

投稿記事 by non » 16年前

GCCですか。
確か、TOPPERSの研修に行って、使いましたっけ?
あのときは Cygwin入れて、makeがえらくめんどくさいって記憶しか・・・
言われるとおりに、ただやっただけでコンパイラオプションの意味もわかりませんでした。
まったく下知識がないので、ずばり教えてください。
Widowsでやるときは、やっぱり、Cygwinの元で動かすのですか?

Blue

Re:可変長配列ねぇ

#4

投稿記事 by Blue » 16年前

MinGWを使ってみては。

たかぎ

Re:可変長配列ねぇ

#5

投稿記事 by たかぎ » 16年前

> 確か、TOPPERSの研修に行って、使いましたっけ?
> あのときは Cygwin入れて、makeがえらくめんどくさいって記憶しか・・・

私もTOPPERSプロジェクトにかなり深く関わっていますので、その手の話はよく聞きますが...

TOPPERSの場合はクロスコンパイラを用意する必要があるので、自分でGCCやBinutilsをビルドする必要があるわけです。
組込み向けであれば、GCCに限らず、C99に対応した商用コンパイラも結構出ていますので、面倒ならそれらを購入するのが手っ取り早いですね。

> Widowsでやるときは、やっぱり、Cygwinの元で動かすのですか?

その方が便利だとは思います。
Cygwinなら-mno-cygwinオプションを付ければMinGWとしても使えます。

non

Re:可変長配列ねぇ

#6

投稿記事 by non » 16年前

そうですか。面倒ですね。ただ端に、C99使ってみたいからだけでは、とても手を出したくないですね。
Blueさん。
MInGWってのは、何のことかわからないので、ちょっと調べて見ます。紹介するってことは、Cygwinより
何かがいいってことですね。

hoge

Re:可変長配列ねぇ

#7

投稿記事 by hoge » 16年前

GCC以外では、DMCがC99にかなり対応しています。
可変長配列も使えたはず。

non

Re:可変長配列ねぇ

#8

投稿記事 by non » 16年前

いろいろと情報ありがとうございます。
今日これから飲み会なので、また、後日、いろいろとアドバイスください。よろしく。

たかぎ

Re:可変長配列ねぇ

#9

投稿記事 by たかぎ » 16年前

> 面倒ですね。

何をもって面倒といわれるのか不明です。
Cygwinのインストールは、setup.exeを実行すればよいだけで、選択すべき項目も事実上2箇所です。
すなわち、ダウンロード元とGCCが使えるようにパッケージを選択する部分だけです。
Visual Studioのインストールよりずっと簡単です。

non

Re:可変長配列ねぇ

#10

投稿記事 by non » 16年前

飲み会から帰ってきました。
>何をもって面倒といわれるのか不明です。
そうですか。TOPPERSのときの印象があって、考えてみれば、Cygwin以降が面倒だったですね。
面倒なのはクロスの方でした。
今度、インストールしてみます。クロスと違ってバージョンは一番新しいGCCをインストールすれば
いいのでしょうか?

たかぎ

Re:可変長配列ねぇ

#11

投稿記事 by たかぎ » 16年前

> クロスと違ってバージョンは一番新しいGCCをインストールすれば
> いいのでしょうか?

Cygwinのインストーラでインストールできるのは、3.4.xだと思うのでそんなに新しくありませんが、C99に触れてみたいだけならそれで十分です。

non

Re:可変長配列ねぇ

#12

投稿記事 by non » 16年前

わかりました。ありがとうございます。

non

Re:可変長配列ねぇ

#13

投稿記事 by non » 16年前

今日、Cygwin入れて、試してみました。
悪戦苦闘の2時間、ようやく可変長変数を試すことができました。
何に苦戦したかって・・・
まず、UNIXのコマンドがわからない。ls,mkdir,cdぐらいかな知ってるのは。
homeがどこにできたかわからない。
インストールしたところにhomeがないよ~どこ行った。(ネットワークドライブにいたよ。なんで。)
viエディタの使い方がわからない。(いいやnotepadで)
C++の拡張子はどうすんだ。
実行ファイルができたのに、実行できない。あれ、カレントなのにパスが通ってない。
やったーできた。まで、全部で2時間かかりましたが、無事に動きました。
たぶん、もう使うことはないでしょう。やっぱ、使い慣れたBC++が一番。

閉鎖

“C言語何でも質問掲示板” へ戻る