c言語のコマンドライン引数についてです。
コマンドライン引数で与えられた文字列(先頭の一つのみ)を表示するプログラムを作りました。
上のプログラムは正常に動作した一方で、下のプログラムは警告が出て、走らせることもできませんでした。(以下警告文)
--------------------------------------------------------------------------
format specifies type 'char *' but the argument has type 'char' [-Wformat]
--------------------------------------------------------------------------
argv[]はポインタとして宣言するのでarg[1]は与えられた引数のアドレスが入っている認識でした。
なぜ上のプログラムが正しく、下のプログラムが間違っているのかわかりません。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
警告に書いてある通りですが・・・
argv は、char のポインタ配列のポインタで
argv[1] は、char のポインタ
*argv[1]は、char なので、
書くなら、
printf("%c\n");
No.4
- 回答日時:
「どうすれば良いでしょうか?」って, そもそも何を期待してるの?
「最初の引数を全部表示したい」ってだけなら上のように書けばいいだけじゃん. それの何が気に入らない?
No.3
- 回答日時:
printf の書式で %s が何を期待しているのかはわかっている? 「arg[1]は与えられた引数のアドレスが入っている」とした
ら (arg[1] は argv[1] のことだとして) *argv[1] は何を意味しているのかな?お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# C言語で 英文字のみからなる文字列、”Radar”、”WasItACatISaw”、”a”、””(空 5 2022/12/20 15:17
- C言語・C++・C# c言語 配列とポインタについて 3 2023/02/09 22:53
- C言語・C++・C# C言語について コマンドラインで >変数 12.00 (char型) と、小数点付きの値を共用体に渡 1 2022/04/22 16:56
- C言語・C++・C# C言語 共用体について コマンドライン引数で値を2つ入力したときに、argv[2]の値をUNI u1 4 2022/04/25 20:34
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAにてTIFFから画像を取込みた...
-
Webプログラムってネイティブア...
-
verilogによる複数のクロックの...
-
2値化した画像の黒い部分のピク...
-
OpenCvsharpについて。
-
VBA
-
VB6 画面サイズ変更について
-
初級者の質問――time_tについて
-
四択のクイズを作っているので...
-
C言語でのソケット通信のclose
-
signalハンドラに引数を渡したい
-
processingで雪が積もるような...
-
COBOLのS9タイプからXタイプへ...
-
Visual Basic 2010で方形波(矩...
-
プログラミングの問題と解答例...
-
無限ループ中にある任意のキー...
-
fscanf(),scanf()とBuffer Over...
-
右クリックから起動するソフト...
-
C++ Builder6 をふたたび動か...
-
指定したフォルダーを最前面表...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Webプログラムってネイティブア...
-
vba listviewにおけるtextのAli...
-
初級者の質問――time_tについて
-
VBA
-
COBOLのS9タイプからXタイプへ...
-
指定したフォルダーを最前面表...
-
マイコンからプログラムを読み...
-
2値化した画像の黒い部分のピク...
-
プロダクションコードとは?
-
Arduino nano(アルドゥイーノ ...
-
URLの最初の「h」を略す
-
VBコンソールアプリ(.NET Frame...
-
XPathの関数「text()="value"」...
-
世界一美しいソースコード
-
Excel VBA で、データベースフ...
-
三次元のグラフを書きたいので...
-
Visual Studio .NET C# でDLLを...
-
SH2を使いたいです
-
壁紙の変更
-
gccでスタックオーバーフローの...
おすすめ情報
下のプログラムに関して、%cにして実行したところ、最初の文字しか表示されませんでした。
((例)24を渡したら2が表示される)
どうすれば良いでしょうか?