1

Microsoft VS Express 2010 コンパイラで C を学習しているので、どの構成と設定を試すことができるか疑問に思っています。空のプロジェクトを開始して .h および .c ファイルを追加するだけで、C ファイルで動作します。モードを C++ から C に変更する必要はなく、実行可能ファイルをコンパイルして、コマンド ランドから実行することができました。コマンドライン引数を取るプロジェクトを IDE 内から起動することは可能ですか? はいの場合、どのように?コマンドラインからリストパラメーターを受け取るヒープソートを行うモジュール化されたプログラムがあります。コマンドライン引数を使用してコマンドラインから実行できますが、次回これを行うときは、IDE 内からコマンドライン引数を使用してプログラムを起動したいと考えています。これは可能ですか?

#include <stdio.h>
#include <stdlib.h>

#include "sort.h"


/* argc kommer att innehålla antalet argument på kommandoraden
   argv är en vektor med argc strängar som representerar
   argumenten. Observera att första argumentet, argv[0], är
   programnamnet.
*/
int main(int argc, char *argv[]) {
  int *vector, n, i;

  if(argc > 1) {
    n = argc - 1;
    vector = (int *) malloc(n * sizeof(int));

    for(i = 0; i<n; i++)
      vector[i] = atoi(argv[i+1]);

    sort(vector, n);

    printf("Sorted input: %d", vector[0]);
    for(i = 1; i<n; i++)
      printf(" %d", vector[i]);
    printf("\n");

    free(vector);
    return 0;
  } else {
    fprintf(stderr, "Error: No input arguments.\n");
    printf("This program sorts number on the command line.\n");
    printf("Usage: %s n1 n2 n3 ...\n", argv[0]);

    return 1;
  }
}
4

3 に答える 3

2

IDE は、コマンドライン引数を使用してプログラムを起動できます。

コマンドライン引数を追加するには:

  1. Solution Explorerでソリューションを右クリックします。
  2. サイドバーで [構成プロパティ] -> [デバッグ]を選択します。
  3. これまで使用してきたコマンド ライン引数を [コマンド引数]フィールドに追加します。

さらに、コードにブレークポイントを設定して、必要に応じて実行を停止します。

もう 1 つ: [コマンド引数] フィールド、または構成プロパティGUI のほとんどのフィールドをクリックすると、フィールドを編集するためのテキスト領域を含む新しいダイアログが表示されます。これに加えて、多くの構成フィールドで使用できる IDE マクロを表示するマクロ>>ボタンが表示されます。

于 2012-05-30T03:04:18.230 に答える
1

他のフェローは、IDEの変更を行う方法をすでに指摘しています:

C ++(g ++)コンパイラでコンパイルしていて、C ++プロジェクトの一部として「C」コードがある場合は、Cコードを保護する適切なマクロが必要です。次のようなもの:

#ifdef __cplusplus
extern "C" {
#endif //__cplusplus

`your C Code here `



#ifdef __cplusplus
}
#endif //__cplusplus
于 2012-05-30T04:00:52.123 に答える
1

プロジェクトを右クリックして、 に移動しPropertiesます。

  1. [構成プロパティ] をクリックします。
  2. C/C++
  3. 高度
  4. 次のようにコンパイル ( に変更Compile as C code /TC)

上記の設定を適用し、ソース ファイルの.c拡張子を変更します。

ここに画像の説明を入力

于 2012-05-30T03:06:35.337 に答える