-PR-
締切済み

C言語のプログラムで配列について教えてください

  • すぐに回答を!
  • 質問No.28358
  • 閲覧数121
  • ありがとう数0
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 0% (0/3)

配列の要素の数をscanf文で入力するためにはどうしたらいいのでしょうか。
x[N]のNの部分です。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル11

ベストアンサー率 55% (155/280)

C言語では、配列変数の大きさはコンパイル前に決定しておく必要 があります。ですから、配列変数の大きさを実行時に与えることは できません。 しかし、malloc() や calloc() 等で、必要な大きさのメモリを実 行時に確保し、ポインタ変数にその先頭アドレスを与えてやれば、 配列と同じように参照することができます。
C言語では、配列変数の大きさはコンパイル前に決定しておく必要
があります。ですから、配列変数の大きさを実行時に与えることは
できません。

しかし、malloc() や calloc() 等で、必要な大きさのメモリを実
行時に確保し、ポインタ変数にその先頭アドレスを与えてやれば、
配列と同じように参照することができます。
関連するQ&A


  • 回答No.2
レベル12

ベストアンサー率 41% (324/772)

C言語上でこのような場合には、配列は使わず 「ポインタ」なるものを使用します。 但し、「ポインタ」の要素数、値などは、 プログラム内部で厳密に管理する必要があります。 「ポインタ」に関しては皆が引っかかる箇所なので しっかり勉強してください。 余談ですが、C++言語では可能です。
C言語上でこのような場合には、配列は使わず
「ポインタ」なるものを使用します。

但し、「ポインタ」の要素数、値などは、
プログラム内部で厳密に管理する必要があります。

「ポインタ」に関しては皆が引っかかる箇所なので
しっかり勉強してください。

余談ですが、C++言語では可能です。
  • 回答No.3
レベル8

ベストアンサー率 62% (25/40)

扱うのが、例えばintの配列ならば、 ------------------------------------------------------- #include<stdio.h>/* printf,scanfとか */ #include<stdlib.h>/* mallocとか */ int main(void){ int i, nb; int *ar ...続きを読む
扱うのが、例えばintの配列ならば、
-------------------------------------------------------
#include<stdio.h>/* printf,scanfとか */
#include<stdlib.h>/* mallocとか */

int main(void){
int i, nb;
int *arr=NULL;

/* 配列の数入力とか */
printf("nb? >");
scanf("%d", &nb);
printf("nb=%d\n", nb);

/* メモリ割り当て */
arr = malloc(nb * sizeof(int));
if(!arr){
fprintf(stderr, "can't allocate.\n");
exit(1);
}

/* 配列の要素入力とか */
for(i=0; i<nb; i++){
printf("arr[%d]? >", i);
scanf("%d", &arr[i]);
}

/* 結果表示 */
for(i=0; i<nb; i++){
printf("arr[%d]=%d\n", i, arr[i]);
}
}
-------------------------------------------------------
みたいにしてやればよいと思いますが、
ただし、scanfの入力に対してエラーチェックを厳重にしないと
ひどいことになると思います~。
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ