
メインで引数をもらい、それをパラメタチェック関数に
渡す場合、どのような形で渡せばいいですか?
※メインでargvを変数に格納しないで、
そのままargvを関数に渡す方法が分かりません。
int prm_chk(char *argv[])
{
/* 処理省略 */
}
int main (int argc, char *argv[])
{
/* 処理省略 */
/* 以下のパラメタ(argv)の渡し方 */
if(prm_chk(*argv[]) != 0){
exit(-1);
}
exit(0);
}
No.4ベストアンサー
- 回答日時:
#1です。
argcも渡すべきだという意見が出ていますので、少し補足します。
argcを渡せば、それはそれで便利ですが、必ずしも必須ではありません。
argv[argc]はNULLになることが保証されているので、配列の終端は判別できます。argcがあれば、それなりに役に立つので、目的次第です。
No.3
- 回答日時:
回答は他の方がされているので補足を
argv[] は char * つまりアドレスが格納された配列ですが、
要素がいくつかるかは不定です。
そこで argc に有効なデータがいくつ格納されているかが、
格納されています。
argc で指定された以上のインデックスであくせすすると、
最悪の場合、CPU例外が発生します。
No.2
- 回答日時:
prm_chk(*argv[]) != 0
↓
prm_chk(argv) != 0
ですかね。
int prm_chk(char *argv[])もやるなら
int prm_chk( int argc, char *argv[])
という風にしたほうが良いかと。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 共用体について コマンドライン引数で値を2つ入力したときに、argv[2]の値をUNI u1 4 2022/04/25 20:34
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# C言語のファイル入力が分かりません 2 2022/05/22 06:35
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# 並列プログラミングのπ計算について 1 2022/07/16 22:30
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# C言語について コマンドラインで >変数 12.00 (char型) と、小数点付きの値を共用体に渡 1 2022/04/22 16:56
- C言語・C++・C# Cのdoubleの浮動小数点表示について 3 2023/04/17 13:14
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# C++プログラミングコードにポリモーフィズムを取り入れ方を教えてください。 2 2023/06/09 11:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字列から空白を取り除きたい...
-
fgetsなどのときのstdinのバッ...
-
charからLPTSTRへの変換方法
-
配列をnビットシフトする
-
CStringをwchar_tに変換したい
-
charでの計算?
-
テキストデータをそのままバイ...
-
【C言語】テキストファイル内の...
-
間接参照のレベルが異なっています
-
<>で囲まれた文字列を文字列の...
-
Linuxでフォルダ内全ファイル名...
-
英単語をアルファベット順に
-
switch文で文字を比較すること...
-
atoi( ) の反対をやりたい
-
コマンドラインに入力されてい...
-
C言語のfor文です。 繰り返しの...
-
至急!C言語文字列置換
-
間接操作のレベルとは
-
getchar()を int でとる理由...
-
PROCのコンパイルエラーの取り...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
fgetsなどのときのstdinのバッ...
-
文字列から空白を取り除きたい...
-
CStringをwchar_tに変換したい
-
charからLPTSTRへの変換方法
-
テキストデータをそのままバイ...
-
c++ 文字列を入力して、一文字...
-
'const char *' 型は 'char *' ...
-
間接操作のレベルとは
-
WORDをcharに変換する方法
-
strncpyと_tcsncpy_sのヌルの扱...
-
型変換
-
配列をnビットシフトする
-
atoi( ) の反対をやりたい
-
Win32APIでのエディットボック...
-
間接参照のレベルが異なっています
-
c言語配列の結合についてです。...
-
【C言語】テキストファイル内の...
-
double型の値をchar配列に変換...
-
switch文で文字を比較すること...
-
C言語のfor文です。 繰り返しの...
おすすめ情報