1 名前:デフォルトの名無しさん [2007/05/08(火) 19:39:26 ] C言語の入門者向け解説スレです。 ・C++言語はスレ違いです。 ・分からない事をなるべく詳しく書いて下さい。 ・ソースコードを晒すと答えやすくなるかもしれません。 ・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 前スレ C言語なら俺に聞け(入門篇) Part 11 pc11.2ch.net/test/read.cgi/tech/1176800483/ 過去スレ Part 1 ttp://pc8.2ch.net/test/read.cgi/tech/1146700389/ Part 2 ttp://pc8.2ch.net/test/read.cgi/tech/1153818463/ Part 3 ttp://pc8.2ch.net/test/read.cgi/tech/1160682950/ Part 4 ttp://pc8.2ch.net/test/read.cgi/tech/1162999861/ Part 5 ttp://pc8.2ch.net/test/read.cgi/tech/1165022193/ Part 6 ttp://pc10.2ch.net/test/read.cgi/tech/1167325490/ Part 7 ttp://pc10.2ch.net/test/read.cgi/tech/1170064980/ Part 8 ttp://pc11.2ch.net/test/read.cgi/tech/1171946674/ Part 9 ttp://pc11.2ch.net/test/read.cgi/tech/1173284217/ Part 10 ttp://pc11.2ch.net/test/read.cgi/tech/1174290325/ 関連スレ C/C++の宿題を片付けます 86代目 pc11.2ch.net/test/read.cgi/tech/1176996941/ くだすれC言語(初心者用) Part.2 pc11.2ch.net/test/read.cgi/tech/1172099763/ スレを勃てるまでもないC/C++の質問はここで 2 pc11.2ch.net/test/read.cgi/tech/1178503366/l50 はきだめC/C++下級者の質問箱 2 pc11.2ch.net/test/read.cgi/tech/1156206091/l50 【C 関数検索 man on WWW】 www.linux.or.jp/JM/index.html
237 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 14:58:57 ] ミスった。 int add(int a, int b) { __asm { mov eax, a add eax, b } }
238 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:02:00 ] そういえば関数呼び出しの括弧も演算子なんじゃなかったっけ?
239 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:02:17 ] >>222 がなんでそんなことをしたくて何を「演算子」と呼んでいるかしらんが if文だりなんだり使って全部作ればいいんじゃね 足し算なら1+1 = 2 だからa,bが両方とも1なら2を出力するというように それらをすべて0〜9のを自分でつくる あと桁上げの関数ももちろん自分で作って
240 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:03:27 ] 比較にも演算子が必要だな。
241 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:04:40 ] if じゃなくて switch ならイケる。 ただ、コード量が多すぎて int 全部を網羅できないな。 char 程度ならともかく。
242 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:05:01 ] switch しか無いな
243 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:05:06 ] つまんないからもうやめていいよ
244 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:07:01 ] お前らほんと数学分かってないんだな・・・ まじ小学校からやり直せよ
245 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:08:19 ] >>235 そこにある=は初期化子であって演算子ではない。
246 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:12:47 ] >>244 プログラミング言語において「演算子」が何を指すかを勉強し直してきてください。
247 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:13:17 ] >>241 桁上げの関数作ればできるだろ switchだって演算子を裏に隠しているだけに過ぎないし ちなみに足し算とかってそもそも写像なんだから なんでそんなことやりたいのかよくわからん 数学じゃなくてC言語で言う「演算子」は人間が勝手に付けた分類だから それにこだわっても意味が無い >>228 のいうように少し数学を学んだほうがいい
248 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:13:39 ] >>245 しかし残念 >>238
249 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:15:31 ] >>247 何で数学の演算子にこだわるのか理解できないのだが。 ここは C 言語スレだぞ?
250 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:18:44 ] 元質問者出てこいよ 後出しで、四則演算子のことでした、とか言いそうだが
251 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:19:36 ] >>222-250
252 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:20:53 ] >>221 >演算子を使わないで割り算や掛け算ってどうやるんですか?たとえば9÷3 割り算や掛け算って言ってるけど
253 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:22:43 ] >>222 の問題意識が何なのかということだぁね C言語だと同じことできるけどこれは演算子と呼ぶ これはそう呼ばないだけの違いになってしまうから C言語での「演算子」の意味にこだわって わざわざ考えるほどの価値がある物と思えない もし>>222 がC言語において何を演算子と呼ぶのかをどうやって決めたか 知りたいとかなら別だけど 結局のところC言語での演算子と数学での演算子の区別すらつかずに 質問しちゃったってオチの気がするw
254 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:24:37 ] C仕様書には区切り句で何らかの作用を起こすもの(代入とかな)を演算子とすると書かれてるんだから 演算子を使わずに何かをするなんて無理だろ
255 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:27:00 ] ここは環境依存おkだから、 インラインアセンブラ使えばおk。
256 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:30:17 ] 2で割った剰余を取る演算て最近のコンパイラだと 勝手に0x01とのビットANDもしくはそれより速いコードに変えてくれるんでしょうか?
257 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:32:47 ] >>254 てことはC言語の演算子は数学の演算子の定義に沿って定義されている ということだな べんきょうになったw
258 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:33:27 ] >>256 Yes.
259 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 15:36:31 ] sizeof まで演算子だしなあ。
260 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:02:59 ] (void)printf("ほげほげ"); と、printfまでキャストをする必要はあるのでしょうか?
261 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:04:21 ] >>260 無い。そもそもintをvoidにキャストしてどうするんだ?
262 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:04:27 ] >>260 ない。 ただし、戻り値を取得し忘れてるわけじゃなく明示的に捨ててるんだという意思表示として (void)にする流儀はあるにはある。 好み、コーディングスタイルレベルの話。
263 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:05:26 ] >>261 戻り値を使わないことを明示する効果がある。 lintのようなチェッカを黙らせる効果もあるな。
264 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:06:37 ] そうそう、コーディング規約に「戻り値は必ずチェックすること」という項目があって、 それの評価を厳密に行なう運用の場合にもそうする必要があるね。
265 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:10:14 ] >>263 lint対策か。それなら納得
266 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 16:57:40 ] コンパイラにもよる。 たとえばFreescaleのCodeWarriorは(void)をつけないとwarningを出すのがデフォルト動作。
267 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:42:50 ] int main(void){ int a=1; kansu(a); } までやっておいて @int kansu(int a){ printf("%d",a*2); } Aint kansu(int *a){ printf("%d",a*2); } @だと正常に動いたのですが、 Aだと「*」がダメだ〜 とコンパイラに怒られるのですが、 この違いとは何なんでしょうか?
268 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:45:51 ] >>267 (2)の*は、意味も分からないで適当につけたの?
269 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:47:47 ] int kansu(int *a){ printf("%d",a*2); } ↓ printf("%d",*a*2); ↑ これじゃね?
270 名前:デフォルトの名無しさん [2007/05/12(土) 18:50:45 ] gets()関数で文章を読み取ってます。リダイレクションでメモ帳で作った文章入れると、改行のところ以降プログラムに読み込まれません。 どうしてでしょうか?改行があっても最後までいきたいんですが
271 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:52:22 ] >>270 getsは改行文字までしか読み取らない manにも書かれてる基本仕様 ついでにgetsを使うのは推奨されない
272 名前:デフォルトの名無しさん [2007/05/12(土) 18:53:05 ] >>271 じゃあ代理のものとして、何を使ったらいいですかね
273 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:54:58 ] >>268 気のせいかもしれませんが、 関数を定義してるプログラムを見ると多くが *a となっていたので、 違いを知りたいなと思って作ったプログラムなので、 かなり不備はあるかもしれません・・・。 >>269 Aの場合だと必ずメモリ関連でセグメントエラーか、警告が出続けてしまうんです。 試したところ、、、セグメントエラーが出ました。
274 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:56:55 ] >>272 fgets(・・・, stdin)
275 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:58:02 ] >>274 stdinっていうのはなんでしょうか
276 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:59:01 ] >>272 >gets() を使うのは極めて危険である。(中略)代わりに fgets() を使うこと。 ttp://www.linux.or.jp/JM/html/LDP_man-pages/man3/gets.3.html これぐらい自分で調べろ
277 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 18:59:34 ] >>273 コールするほうも kansu(&a); と変えないとだめだよ。 こういうところで試行錯誤してるなら、入門書を一冊買ったほうがだいぶ時間の節約になると思うけど。
278 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:00:09 ] >>275 とりあえずググれや。
279 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:00:11 ] >>273 int kansu(int *a) にするなら int main(void){ int a=1; kansu(&a); < &をつけなきゃ }
280 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:01:56 ] >>276 危険なんですね。 fgetsにしたら 呼び出し時のパラメータが足りない:fgets(関数 main ) ってなってコンパイルできないんですが・・・・
281 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:02:58 ] >>280 ttp://www.bohyoh.com/CandCPP/C/Library/fgets.html ちゃんと必要な引数を与えている?
282 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:04:35 ] >>277 ,279 すごい納得できました。ありがとうございました。 入門書は・・・買ったんですが、、、馬鹿なので理解できない^^;
283 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:06:16 ] >>281 なんかよくわからないんですが、 char型の配列に文章をいれたいんです・・・・ char bunsyo[256] みたいなやつにです
284 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:07:28 ] >>283 fgets(bunsyo, 255, stdin)
285 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:08:16 ] >>283 gets()をfgets()に変更するくらいの手続きを自分で考えられない(≒検索できない)なら、 プログラマに向かないからとっとと諦めた方がいいよ。
286 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:09:04 ] >>284 ダウト。慣用句的にそれを使っているのなら、 一度マニュアルページをよく読んで自分の過ちに気付いておいた方がいい。
287 名前:デフォルトの名無しさん [2007/05/12(土) 19:09:56 ] >>284 コンパイルはとおるんですが、改行のところで読み込みがおわってしまうんですが・・・・
288 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:10:09 ] >>284 第二引数Nはバッファサイズだろ 読み込まれる文字数最大値はN-1
289 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:10:27 ] >>286 ダウト。説明なしにそういうことを言うのはお前の知ったかに過ぎない
290 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:11:12 ] >>287 fgets()も、改行までしか読まない。 だから、マニュアルページを読むなり情報を検索できないなら無駄だから諦めろって。
291 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:11:56 ] >>288 gdgdいってねーで正解を書いたら?知ったかへぼプログラマーwwww N-1そうだよ?何か?まさか、254 にしろとかボケないだろうね?
292 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:12:48 ] >>290 読み込むテキストに工夫がいりますかね?
293 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:13:06 ] >>289 =>>291 か? ファビョってんじゃないよ。 そこまで分かってて正解が判らないような屑がこの板なんかに書くんじゃないよ。
294 名前:本日の知ったか馬鹿第一号 [2007/05/12(土) 19:13:27 ] 288 名前:デフォルトの名無しさん 投稿日:2007/05/12(土) 19:10:09 >>284 第二引数Nはバッファサイズだろ 読み込まれる文字数最大値はN-1
295 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:13:42 ] 暇だからプログラム組もうかな でも、モチベーションが・・・・・ なにか練習問題でものってるサイトないか?
296 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:14:33 ] >>292 テキストファイルを丸ごと読み込むには、 ・fgetc()で一文字ずつ ・fgets()で一行単位で ・fread()でブロック単位(或いは一気に) 読む必要がある。
297 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:14:34 ] >>291 だから>>283 の宣言なら、普通にfgets(bunsyo, 256, stdin);でいいだろ なんでバッファのラスト1バイトを無駄にしてんだよ >>292 ループ回して一行ずつ読み込む
298 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:14:44 ] >>287 宿題スレで、ファイル全部読み込むコード書いてくださいって言ったほうがいいんじゃね?
299 名前:デフォルトの名無しさん [2007/05/12(土) 19:14:47 ] >>276 とかこのスレにいらねーだろ。このスレが何なのかわかっていないのに まだ勉強中の知らない奴を見つけて、自分が知っていることをひそかに自慢しながら 他人をたたく基地外だろ。ここでレスしているほかの奴にとっては迷惑千万、失せろクズプログラマー
300 名前:デフォルトの名無しさん [2007/05/12(土) 19:15:52 ] >>293 >そこまで分かってて正解が判らないような屑が 自分が指摘したのに答えられない(勘違い)クズこそ来るなよw お前はまったく指摘をしていない。ただたんに 自分が思った ことと違っていただけ。 それもお前が間違えているという勘違い(プ 不適切なら正しい使い方を明示しろ、たぶんお前じゃできない。あれは間違っていないからw
301 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:15:56 ] ファイルのサイズがわかってるなら、適当な大きさのバッファを用意して、 fread()でもいいけどな。
302 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:16:07 ] 人間の屑よりはマシだな
303 名前:デフォルトの名無しさん [2007/05/12(土) 19:16:58 ] >>296 うーん。めんどくさそうですね。テキストファイルの改行をなくしちゃいます
304 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:17:35 ] >>300 あのね、坊やみたいなお子ちゃまはこんなところに来ちゃダメよ。 既に正解レスがついているんだからもっと落ち着きましょうね。
305 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:18:10 ] お前ら邪魔
306 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:18:18 ] >>299 自分で考えよう、調べようって姿勢が見えたら、頭わるそうなヤツでもけっこう親切に教えてもらえるよ。 ただ「わからない、を即答せよ」ってだけじゃ教えてもらえない。
307 名前:デフォルトの名無しさん [2007/05/12(土) 19:19:32 ] >>293 揚げ足取りにもならなかったな、所詮お前はわかっていない(っと自分が思った)奴をたたくだけか 二度とくるな、お前みたいなクズこそこのスレにはいらない。このスレのタイトル読めますか? あっ、日本語も日本の社会もろくに知らない在日かw
308 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:20:15 ] まぁ、fgets()の慣用句はfgets(buf, sizeof(buf), stdin)だがな。 仮にもプログラムを組もうというときに、きちんと調べる手間を惜しんじゃ遺憾な。
309 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:20:18 ] 以下、キモメンメガネデヴピッツァのきめ台詞が出るまでお待ちください
310 名前:デフォルトの名無しさん [2007/05/12(土) 19:20:38 ] >>304 あのね、小学生未満の精神年齢のお子ちゃまはこんなところに来ちゃダメよ。 勘違いの指摘レスがついているんだからもっと落ち着きましょうね♪ んで、何が間違いか、指摘できた?正解がとかじゃなくてw
311 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:21:38 ] 「屑」対「クズ」か。どっちが半島人かは火(病)を見るより明らかだな。
312 名前:デフォルトの名無しさん [2007/05/12(土) 19:22:26 ] >>284 は単なる入力ミスだろ。それだけでここまで お前はあほだ! みたいな プレッシャーをかける基地外ってプログラマーに向いてねーよなwwwwww
313 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:22:47 ] >>309 半島人がでてきたぞ。
314 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:23:23 ] >>282 だったらその本は自分に向いていなかったと諦めて、 ちょっと立ち読みして、ほかに良さそうな本を探して買えばいい。
315 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:23:36 ] くずはくずかごに入っとけ。 それより早く>>295 に答えてください。
316 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:24:33 ] >>311 地球上のカス以下の お 前 が 言 う な wwwwwwww っつーか、揚げ足取り必死だなw そんなんじゃ本当にプログラマーに向いてねーよ、その程度のことでガミガミ 相手を罵倒するようじゃ、そんな奴こそこんなスレに来ないほうが良いだろ。 気分が悪くなるものを敢えてみてゲロを吐いているマゾかい?w グロ動画でも貼ってやろうか?w
317 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:24:59 ] おお、新展開。今度の攻撃は「単なる入力ミス」ですw >>315 宿題スレに未解決の宿題が幾つかあるんじゃない? 下手なサイト見るより勉強になりそうですよ。
318 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:29:25 ] freadでも使えば。
319 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:30:13 ] >>317 ほらな、そういうことで相手をチクチクつついて周りの気分も害しているだろ? だからお前みたいなつまらねークズはプログラマーに向いてないから 頼むから大掛かりなプロジェクトには絶対に介入するなよ。 っつーか協調性がなくて無理だろうね、お前みたいなちっぽけなクズはw ちなみに、あの程度の間違いならさらっと 256 って書けば済んだ話だろ。 お前わかってねー!間違えたへへーん馬鹿!とか罵倒する方が頭がイカレてんだろ。 そういう奴に限って、自分の間違いを指摘されると、認めないどころか お前がおかしい!って言い始めるから困るぜ ヤレヤレ 以後、さっきからきんもぉ〜★な指摘するだけで答えを出さない基地外は放置よろ たぶん引きこもりニートだろ
320 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:30:36 ] >>318 >296 >301
321 名前:こいつさいこーに協調性のない引きこもりwww mailto:sage [2007/05/12(土) 19:32:14 ] 317 名前:デフォルトの名無しさん 投稿日:2007/05/12(土) 19:24:59 おお、新展開。今度の攻撃は「単なる入力ミス」ですw 293 名前:デフォルトの名無しさん 投稿日:2007/05/12(土) 19:13:06 >>289 =>>291 か? ファビョってんじゃないよ。 そこまで分かってて正解が判らないような屑がこの板なんかに書くんじゃないよ。 297 名前:デフォルトの名無しさん 投稿日:2007/05/12(土) 19:14:34 >>291 だから>>283 の宣言なら、普通にfgets(bunsyo, 256, stdin);でいいだろ なんでバッファのラスト1バイトを無駄にしてんだよ なんでバッファのラスト1バイトを無駄にしてんだよ ↑こういう嫌らしい言い方をするだろ? だから日ごろ嫌われていることに気づかない仲間はずれなんだろうからこんな場所で 匿名性を利用して自分より知識の乏しい弱者相手に強気になれるんだろうねw
322 名前:284 mailto:sage [2007/05/12(土) 19:34:14 ] >>284 はただの入力ミスです ♠ 56としたつもりが同じキーを2回押して書き込みしちゃっただけでぇ〜〜〜す ♣ あぁ〜〜いとぅいまてぇ〜〜ん、文字配列のサイズを指定するように、ここでレスする以外の 自分が書くソースでは sizeof 使ってまぁ〜〜〜つ ♥
323 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:36:19 ] char s[256]; size_t size=sizeof(s)/sizeof(s[0]; sizeof(s,size,stdin); こんな感じでぇ〜〜どぉ〜〜〜でちゅかぁ〜〜?♦
324 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:37:15 ] あちゃぁ〜〜、今度はsizeofの閉じ括弧忘れちゃいまちちゃぁ〜〜〜 あぁ〜〜〜いとぅいまちぇぇ〜〜〜〜ん ♪
325 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:39:29 ] fgetsの仕様って buf[BUFFER_SIZE]; fgets(buf, BUFFR_SIZE, stdin); とかするためにこんな仕様になってるんでしょうか?
326 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:43:07 ] こんな仕様が何を指すのかわからん。
327 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:44:52 ] >>325 そう
328 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:46:54 ] >>325 fgets()の他にも、strftime(), snprintf()も同じように格納バッファサイズを指定して、 それよりも少ない文字数しか格納しないような仕様になっている。
329 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:50:27 ] なるほど、文字列の最後が\0で終わるからその分余計に取らないと駄目だからか
330 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:11:00 ] 普通にsizeof使えば、悩むことなんて何もないのに
331 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:20:56 ] >>330 getsもsizeof使って実装すれば何の問題もないのに、と思っていたりする?
332 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:22:21 ] まず、おまえさんが何が言いたいのか分からん。
333 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:22:29 ] 333 gets!
334 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:37:37 ] つまり、まぁ、こういうこと int main(void) { exit 0; }
335 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:38:31 ] d.hatena.ne.jp/keyword/%A5%B2%A5%C3%A5%C4 お前らほんっとうにこれが好きなんだな
336 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:39:50 ] くだらなすぎ
337 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 20:54:40 ] 標準入力から読み込みたいけどサイズとファイルポインタ指定が面倒ってことなら 自分でfgetsをそれらを決め打ちした状態で呼び出す関数作ればいいんでは