[解決済み] C言語でのargv[]の長さの求め方
2022-02-15 03:17:07
質問
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[]){
int fir; //badly named loop variable
char *input[] = calloc( strlen(argv), sizeof(char)); //initializing an array
for( fir = 1; fir< strlen(argv); fir++){ //removing the first element of argv
strcat(input, argv[fir]); // appending to input
}
}
エラーが出たのは7行目です。これは、"passing argument 1 of 'strlen' from incompatible pointer type"と言っています。私は、同じエラーを
strcat
関数があります。
また
char **
が、期待されるのは
const char *
両方の関数で "。
のすべての要素で新しい配列を作成しようとしています。
argv
を除く。試しに
argv = &argv[1]
と表示され、うまくいきませんでした。
を実行します。
strlen()
と
strcat()
を取らない関数は
char
の配列は?
どのように解決するのですか?
int main(int argc, char *argv[])
argv
へのポインタの配列です。
char
(すなわち文字列の配列)。この配列の長さは
argc
引数で指定します。
strlen
は、ヌル終端でなければならない単一の文字列の長さを取得するために使用されることを意図しています。そうでなければ、動作は不定です。
関連
-
[解決済み】「ポインタから異なるサイズの整数へのキャスト」エラーが発生するのはなぜですか?
-
[解決済み】エラー:'for'ループの初期宣言はC99モードでしかできない【重複
-
[解決済み】警告。この関数ではXが初期化されていない状態で使用される可能性があります。
-
[解決済み】警告:組み込み関数'printf'の非互換な暗黙の宣言(デフォルトで有効]
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] mallocの結果はキャストするのですか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] C++でextern "C "を使用した場合の効果は?
-
[解決済み] int argc, char *argv[] とはどういう意味ですか?
-
[解決済み】C/C++の"-->"演算子とは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】組み込み関数「malloc」の暗黙の宣言の非互換性
-
[解決済み】警告:互換性のないポインタ型からの代入
-
[解決済み】式は、単純なポインタ演算を使用して完全なオブジェクト型へのポインタでなければなりません【重複】。
-
[解決済み】 error: too few arguments to function `printDay' (C言語)
-
[解決済み】 strcpyとstrdupの比較
-
[解決済み】C言語で浮動小数点例外(コアダンプ)発生
-
[解決済み】「構造体でもユニオンでもないものにメンバー'*******'を要求する」とはどういう意味ですか?
-
[解決済み】エラー。非スカラー型への変換を要求された
-
[解決済み】malloc():メモリ破壊
-
[解決済み] '{'トークンの前に期待される式