[過去ログ]
C言語なら俺に聞け 151 (1002レス)
C言語なら俺に聞け 151 http://mevius.5ch.net/test/read.cgi/tech/1554171817/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
154: デフォルトの名無しさん (ワッチョイ 697b-Xu0i) [sage] 2019/04/18(木) 06:35:48.92 ID:gmBt4t3M0 文字列(Cでは'\0'終端のchar配列)を格納できる変数 char s[SIZE]; に対して、 文字列を格納したい場合は scanf("%s", s); // 連続したメモリ領域 s[0], s[1], s[2] ... に格納 配列名 s は &s[0](配列の先頭要素へのポインタ)と、値と型が等しい 1文字だけ格納したい場合は scanf("%c%c", &[0], &s[1]); // s[0] と s[1] に1字ずつ格納 &s[0] は s と同じだが、 &s[1] との対応から &s[0] と書く方が分かりやすい 「配列名が暗黙に先頭要素へのポインタに変換される」話と、 「何を操作しているかをソースの書き方で明瞭に表現しようぜ」って話と、 整頓されずに混乱してるんじゃないかな。 「Cでは“文字列”とは何か」も絡んでるかも。 それに加えて、2次元配列という、これまたCではやや微妙な問題が噛んでるし。 char array[ROW][COLUMN]; // charの2次元配列 char *array[LINE]; // charへのポインタの1次元配列 >>149 の質問では二次元配列と明記されてるから本質じゃないけど、 説明を厳密にしようとすると、触れないのは片手落ちになっちゃうよね。 & 演算子でアドレスを得るときの内部的な処理の周辺。 http://mevius.5ch.net/test/read.cgi/tech/1554171817/154
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 848 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.010s