[過去ログ]
C言語なら俺に聞け 151 (1002レス)
上
下
前
次
1-
新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
154
:
(ワッチョイ 697b-Xu0i)
2019/04/18(木)06:35
ID:gmBt4t3M0(1/2)
調
AA×
>>149
[240|
320
|
480
|
600
|
100%
|
JPG
|
べ
|
レス栞
|
レス消
]
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
文字列では終端の配列を格納できる変数 に対して 文字列を格納したい場合は 連続したメモリ領域 に格納 配列名 は 配列の先頭要素へのポインタと値と型が等しい 文字だけ格納したい場合は と に字ずつ格納 は と同じだが との対応から と書く方が分かりやすい 配列名が暗黙に先頭要素へのポインタに変換される話と 何を操作しているかをソースの書き方で明瞭に表現しようぜって話と 整頓されずに混乱してるんじゃないかな では文字列とは何かも絡んでるかも それに加えて次元配列というこれまたではやや微妙な問題が噛んでるし の次元配列 へのポインタの次元配列 の質問では二次元配列と明記されてるから本質じゃないけど 説明を厳密にしようとすると触れないのは片手落ちになっちゃうよね 演算子でアドレスを得るときの内部的な処理の周辺
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 848 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
ぬこの手
ぬこTOP
0.042s