2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

c言語に詳しい奴来てくれ

1 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:06:50.369 ID:5PZuIF5n0.net
例えばchar namae[10]とかのこの10って何を意味してんの?

2 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:07:31.490 ID:Cq6a0FTD0.net
配列の数

3 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:07:34.244 ID:EElZx9Ik0.net
スタック

4 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:08:07.919 ID:fGp9azy50.net
10回ピザって言ってみての10

5 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:08:33.299 ID:LGJybWXP0.net
シャァが10人いるってことだよ

6 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:08:59.350 ID:3SGDuFdn0.net
箱の数
中身を指定する時の数字とは違うから注意

7 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:09:10.477 ID:5PZuIF5n0.net
わからんー
詳しく頼む

8 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:09:28.011 ID:ZDw7KU6H0.net
逆に10が分からないのに何故[ ]を書くんだ

9 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:10:32.946 ID:cRF9s6vs0.net
配列の要素数だよ

10 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:11:07.069 ID:7w2uouoC0.net
お前それc言語以前の問題じゃね?

11 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:11:25.551 ID:pEVEzuVc0.net
あるいは配列のサイズ

12 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:12:05.494 ID:3SGDuFdn0.net
http://i.imgur.com/MjyIp3u.jpg

13 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:12:46.163 ID:4Ee2+/yxa.net
>>12
やさしいやつだな

14 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:13:00.247 ID:5PZuIF5n0.net
namaeには10個より多くのの文字を入れれないということ?

15 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:13:08.894 ID:xMC39fsH0.net
>>12
こんな無能相手に優しすぎて涙出る

16 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:13:10.677 ID:LGJybWXP0.net
char型の変数が10個ほしい時に
char namae1;
char namae2;

char namae10
って宣言すると見た目も効率も悪いだろ

それをスッキリまとめてかけるのが
char namae[10];

17 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:14:29.302 ID:pEVEzuVc0.net
ひょっとして配列というより文字列の話?

18 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:16:08.185 ID:fGp9azy50.net
最後にヌル入れないといけないとかc言語って面倒な言語だな

19 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:16:23.291 ID:X3OAWXHe0.net
cやった事無い俺でも分かったぞ

20 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:17:07.111 ID:5PZuIF5n0.net
本にはchar namae1[10]とかいてあるが.... 関係ないか…

21 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:19:34.364 ID:6RXKbfmC0.net
>>20
入門書での命名規則なんていちいち気にしない方がいい
どうせ意味不明だから

22 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:20:31.425 ID:Sjd984810.net
入門書なら解説してあるだろ

23 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:25:02.430 ID:pEVEzuVc0.net
>>21
これは>>16がやらかしただけじゃないの

24 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:26:39.163 ID:3SGDuFdn0.net
けっきょく何がわからないのかわからない

25 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:29:09.287 ID:6RXKbfmC0.net
とりあえずソース示してどこがわからないのか行ってもらったほうが早いな
言葉足らずにも程がある

26 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:31:35.674 ID:X3OAWXHe0.net
むしろこんな初歩の初歩で躓くようなら向いてないんだと思うが

27 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:31:40.607 ID:pEVEzuVc0.net
マジックナンバーかも

28 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:33:49.848 ID:6RXKbfmC0.net
入門書って本当あり得ないことを普通に書いてるからな
まともな人なら執筆したことを恥ずかしくなるようなサンプルコードだらけ
本を買うならしっかり吟味したほうが良い
char* str = "aaaaa";
こういうのとかありがち
領域確保するときに終端文字無視してたりとか

29 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:35:39.206 ID:pEVEzuVc0.net
あれ?書き換えなきゃそれでいいんでないの

30 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:37:45.640 ID:6RXKbfmC0.net
型が違う
暗黙に型変換できるからエラーにはならないだろうけど
まともなコンパイラなら警告出すはず

31 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:41:49.112 ID:pEVEzuVc0.net
const?
忘れてたわCにもあるんだっけ

32 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:43:29.813 ID:eXpPbCcqa.net
>>29
書き換えなきゃOK

33 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:45:38.199 ID:Ad8bvmTAp.net
>>31
そゆこと
参照先ではなく参照にかかるから
const char* が正解になる
なんにしても警告出すようなコードをサンプルとして示すのはダメだろ

34 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:46:42.430 ID:7O4i3UsP0.net
まあ綺麗ではないよね

35 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:47:53.587 ID:n9AOeQgR0.net
データを入れる箱があってそれを□だとすると
char namae → □
char namae[10] → □□□□□□□□□□
こういうこと

36 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:52:12.770 ID:pEVEzuVc0.net
初っ端から全部解説するのは大変だし
だからいわゆる"おまじない"とかも存在するわけだけど
簡潔さのために省略する場合は「ホントは正しくないけど〜後でちゃんとやります」くらいのフォローはするべきかもね

37 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:52:47.670 ID:g0ecYigU0.net
cher配列を文字列として扱いたいなら\0の分考えてあげないとな

配列は長さを変えられないけど、扱う文字列の長さが変えられなかったら不便だろ?
けど、コンピュータに空のデータは存在しない(無意味なデータはあるけど)からどこまでを文字として認識するかわからない
だから、文字列として扱うところと無意味なデータの間にここで終わりねっていう区切をつける。
その分一文字分使うからchar str[10]に入る文字列の長さは10文字じゃなくて9文字

38 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:53:14.592 ID:6RXKbfmC0.net
>>35
ここでのポイントは必ず連続した領域が確保されてるってこと
それをきちんと説明してないからポインタで詰まる奴が出てくる

39 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:54:36.036 ID:g0ecYigU0.net
>>38ポインタ配列とかダブルポインタとか正しく図にできてる参考書すら少ないからな

40 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:55:50.114 ID:wdXRsJBa0.net
こういうのがわからない奴が平然とプログラムを書いて納品してるのが日本のIT業界
まじで腐ってやがるぜ

41 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:56:32.759 ID:pEVEzuVc0.net
ちゃんと書こうと思ったら
型によって箱の大きさ変わるし

42 :以下、\(^o^)/でVIPがお送りします:2015/05/20(水) 23:56:53.494 ID:6RXKbfmC0.net
>>39
二次元配列とポインタ配列と全く同じものとして扱っちゃってるからな
まあ実際同じようにアクセスできる訳だけど中身は全然違う
つまり何が言いたいかというと大人しくKR本を買え

43 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:05:05.110 ID:ZiLgLhP/0.net
>>41
個々の箱の大きさについてはまあ気にしなくてもいいとは思う
大きさが言語仕様で固定されてるのはchar型だけだし
そのためのポインタだから

44 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:05:49.584 ID:sqeqWsUIa.net
char nameArr[256];
char **namePtrPtr;

*namePtrPtr = nameArr;

namePtrPtr++;

45 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:10:16.366 ID:XKpc1/LSK.net
>>44
やめろ!

46 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:10:19.978 ID:ZiLgLhP/0.net
>>44
そこにアクセスしちゃらめ〜

47 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:14:14.451 ID:DdiHCWvN0.net
nameじゃなくてnamaeってするところがなんかむしゃくしゃする

48 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:15:44.853 ID:PIR5akKf0.net
>>23
すまん
配列のメリットを分かりやすく
伝えようとしたつもりなんだが
なにをやらかしているのかおしえてほしい

49 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:17:00.808 ID:Eayci8ue0.net
よく見たらnamaeだった
なんか違和感あったんだよなあ

50 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:17:47.491 ID:HQFFYunK0.net
配列や

51 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:32:59.637 ID:wYaytSCn0.net
>>48
ぜんぜん例えになってない

52 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:39:04.462 ID:ZiLgLhP/0.net
まず配列を箱のグループとして考えるのが間違い
ただ連続した領域を確保して使ってるだけ
文字列に終端文字なんてものが必要なのもそのため

53 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:42:22.969 ID:PIR5akKf0.net
>>51
なにかに例えてるつもりはないぞ
単純に配列の使い時とイメージを
伝えたかっただけだ

54 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:43:22.194 ID:PIR5akKf0.net
>>51さんはどう伝えるつもりだったの?
勉強不足な俺に教えてくれ

55 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:43:37.031 ID:ZiLgLhP/0.net
というかそもそも箱ってなんだよって思う
余計わからなくなるだろと
むしろこれでわかった気になる奴がいたらそれこそ問題だ
少なくともプログラミングの勉強に関して言えば変な例えは使わないほうがいいし
そんな書籍は参考にしちゃだめ

56 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:45:20.631 ID:ZiLgLhP/0.net
>>53
多分命名規則の話してたからその流れだと思う
型と変数名があってないから
char name1 は余程特別なケースを除いて不適切だから

57 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:48:04.725 ID:PIR5akKf0.net
>>56
規則云々はほっておいて
配列はまとめて宣言できる便利物だよ
って事を伝えたかったんだが


当然namae1なんて名前はつけることはないだろうが
単純に書いた方がわかりやすいだろ?

58 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:48:23.209 ID:wYaytSCn0.net
>>53
いや、ぜんぜん配列の説明になってないよ

59 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:51:45.113 ID:51ACfsqK0.net
そんなことよりおまんこしようぜ!

60 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:52:34.579 ID:PIR5akKf0.net
>>58
>>1はとりあえず
何がわからないのかわからない状態に陥ってるようだったから
取っ掛かりをつかんでほしくて書いたんだ

イメージがわけば詳しい話しにもついてきやすいだろ
おれは詳しい説明よりも
イメージをもってほしくて>>16を書いた
説明を書いたつもりはあんまりない

61 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:53:58.085 ID:PIR5akKf0.net
>>58
どう説明するのが適切かおしえてください

62 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 00:59:51.756 ID:c5wkDOehd.net
あれ、配列って0から始まらなかったっけ

63 :以下、\(^o^)/でVIPがお送りします:2015/05/21(木) 01:00:06.513 ID:ZiLgLhP/0.net
>>61
まず配列の説明に入る前に変数についてきちんと説明したほうが良いな
とりあえず変数は箱ではない
で何度も出てるけどベースはポインタでそこからいくつか(正しくは何バイトか)連続した領域を確保したものが配列
決して箱の集まりなんかではない
コンテナみたいに扱うことも可能だけどそれは配列の使い方の一つを説明してるだけで
配列そのものの説明にはなってない

総レス数 63
13 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200