C言語教室

このエントリーをはてなブックマークに追加
1レベル1 ◆YCWSqVnnmg
C言語を勉強している
駆け出しプログラマーです

オレのために皆!!力を貸してくれ!

そんな贅沢なスレです。
2デフォルトの名無しさん:04/11/04 16:24:58
贅沢は敵です
3デフォルトの名無しさん:04/11/04 16:27:51
C漂流教室
4デフォルトの名無しさん:04/11/04 16:31:49
今日あぼーん登録した初めてのスレがここです
5デフォルトの名無しさん:04/11/04 16:32:22
ついでに>>1のトリップもNGにした
6レベル1 ◆YCWSqVnnmg :04/11/04 16:41:17
そんな事言わないでくださいよ
真剣にこのスレを有効に贅沢に使わせていただきます

開発環境(今使ってる環境)というものですが
メモ帳
Borland C++ Compiler
猫でもわかる C言語プログラミング
を使用しています

今は構造体あたりを勉強しています。

張り切って行こー
宜しくお願いします
よし、漏れも仲間に入れやがれ!
8デフォルトの名無しさん:04/11/04 16:47:15
>>1
ここはお前のオナニー部屋じゃねえんだ
ティッシュの中にでも出してろ
な!
9デフォルトの名無しさん:04/11/04 17:00:21
>>8
今時ティッシュって冗談だろ?トイレットペーパー使えよ
10デフォルトの名無しさん:04/11/04 17:07:39
ノートパッドヤメレ
11デフォルトの名無しさん:04/11/04 17:24:23
ワードよりは。
12デフォルトの名無しさん:04/11/04 17:54:31
猫にわかる言語が猿を継承した人間がわからないのは問題だ
13底辺 ◆0RbUzIT0To :04/11/04 18:53:15
>>1->>2
ワロタ
14WksG ◆Wbwg9GCRpY :04/11/04 19:37:33
参戦しましょうかね・・・・
なまえはウィクスグとか読んだりします。以後、よろしくです
とりあえず参加する人はPCの状況書いていたほうがいいんでねーの?
てことで
テンプレ
---------------------------------------------------------------------
【OS】
 :
【使用ソフト】
 :
【使用参考書】
 :
【プログラム経歴】
 :
【質問・補足など】
 :
----------------------------------------------------------------------
ウィクスグの開発環境
【OS】
 :Windows XP
【使用ソフト】
 :VisualC++ver.6.0
【使用参考書】
 :新約C言語入門
【プログラム経歴】
 :Java 
:C++ ←Cわかんないので( ゚д゚)アキタヨ・・・
 :HPS ←1時間( ゚д゚)アキタヨ・・・
【質問・補足など】
 :
 ( ´ー`)y-~~マターリ
15デフォルトの名無しさん:04/11/04 20:08:50
□□□□□▼□□□□□□□□▼▼▼□□□□□□□□□
□□□□□■■▼□□□□□□▼■▼□□□□□□□□□
□□□□▼■■□□□□□□□■■▼□□□□□□□□□
□□□▼■■▼□□□□□□▼■■▼▼▼▼■■▼□□□
□□□■■■□□▼▼□□□▼■■■■■■■■■▼□□
□▼▼■■▼□▼■■▼□▼■■▼▼▼▼▼■■■□□□
▼■■■■▼▼■■▼□□▼■■■□□□▼■■▼□□□
▼■■■■▼▼■▼□□▼■■▼■▼□▼■■■□□□□
□▼■■■■■■▼□▼■■▼▼■■▼■■■▼□□□□
□□▼■■■■▼▼□▼■▼□□▼■■■■▼□□□□□
□□□▼■■▼▼■▼□▼□□□□▼■■■□□□□□□
□□□▼■■□□■■▼□□□□□▼■■▼▼□□□□□
▼▼▼■■■▼■■■■▼□□▼▼■■■■■▼□□□□
■■■■■■■■▼■■▼▼■■■■▼■■■■■■▼▼
■■▼▼▼■■□□▼▼■■■■▼▼□□▼■■■■■▼
▼▼▼□□■■□▼▼▼■■■▼▼■▼▼▼▼■■■■▼
□■■■▼■■▼■■▼■■▼□▼■■■■▼▼▼▼▼□
□■■■▼■■▼■■▼▼▼□□▼■■■■■■▼□□□
□■■■▼■■□▼■■□□□□□▼▼■■■■▼□□□
▼■■■□■■□▼■■▼□□▼□□□▼■■▼□□□□
▼■■■□■■□□■■▼□▼■■▼▼▼□□□□□□□
▼■■▼□■■□□■■▼□▼■■■■■▼▼□□□□□
▼■■▼□■■□□▼▼□□▼■■■■■■■■▼▼□□
▼■■▼□■■□□□□□□□▼▼■■■■■■■▼□□
□□□□□■■□□□□□□□□□□▼■■■■■▼□□
□□□□□■■□□□□□□□□□□□□▼▼▼▼□□□
16デフォルトの名無しさん:04/11/04 20:09:25
ここは>>1の為だけのスレですか?
17レベル1 ◆YCWSqVnnmg :04/11/04 21:00:52
【OS】
XP
【使用ソフト】
Borland C++ Compiler
【使用参考書】
猫でもわかる
【プログラム経歴】
C 2週間ぐらい
【質問・補足など】
構造体のところで分からないところがあるんですが
どんな風に質問したら答えやすいでしょうか?


テキストファイルをどこかにうpして話しを進めた方がいいのか
ココに書き込んじゃった方がいいのか


18デフォルトの名無しさん:04/11/04 21:34:28
周りの人が>>1を操作して
ステータスが上がるゲームと勘違いしてるんだろうな…

Tips集とかテクニック的なものは他人に聞くのはかなり効率はいいと思うが
理解や覚えるとかは自分自身でやらにゃどうにもならんだろ
19デフォルトの名無しさん:04/11/04 21:56:07
java歴2年のおれに
今月からC強制学習命令が北。

今会社でIB○のへなへな教育ソフトやってる。
こんな自分にピッタリの参考書は?
20デフォルトの名無しさん:04/11/04 22:02:34
21WksG ◆Wbwg9GCRpY :04/11/04 22:05:18
>>19
参考書・・・・・
やはり視覚的に覚えたいなら猫でもわかるじゃないかな。
あとは・・・・・・一番の参考書は友達に聞くとかじゃないかな。
一人で100%マスタは不可能だから、協力してガンガル。
これが近道じゃないかな?


っと言ってみる。
22WksG ◆Wbwg9GCRpY :04/11/04 22:06:46
>>17
問題の聞きたいところをカキコしてもいいんでねぇの?
あまりわからないがな(ワラ
じゃあ俺も参加してみるよ。
えっ?何故かって?
呼ばれた気がするからさ。
うそ、ただちょっと興味あるだけ。
>>1>>14よろしくな。

【OS】
エックスピー
【使用ソフト】
ビーシーシー
【使用参考書】
いろんなお勉強サイト
【プログラム経歴】
C言語 3日
その他いろんなもの 3日
【質問・補足など】
ぬるぽ
24デフォルトの名無しさん:04/11/05 01:04:03
大阪(西梅田)、新宿(JR駅前)のそれぞれ一等地に
拠点を構え、業績急上昇中!未経験者大募集中!の
ソフトウェア開発会社
グリーンシステムを応援するHPです。
http://www.geocities.jp/grs_hp/

応援するスレはこちら!
http://school4.2ch.net/test/read.cgi/job/1077432387/

最高の会社にするため、みんな頑張ってます!

25レベル1 ◆YCWSqVnnmg :04/11/05 11:25:46
こんにちは皆さん

戻り値についての質問があるのですが

関数の最後に return があると思うのですが
return 0; はシステムに返すと書いてあるのですが
たまに return -1; などを見かけます

この -1 ってのはどこに返しているのでしょうか?
26デフォルトの名無しさん:04/11/05 11:36:31
return 0; はシステムに返すと書いてあるのですが
        ^^^^^^^^^^^^^
27レベル1 ◆YCWSqVnnmg :04/11/05 11:43:25
>>26
return -1 も return 0 も同じことって事でしょうか?


分からなくて −1 があるところに 0 を入れてみたのですが
−1のときと 0 のときでは動き方が異なるようなのですが
28デフォルトの名無しさん:04/11/05 11:51:19
>>return 0; はシステムに返すと書いてあるのですが
「main」の場合はな

>>−1のときと 0 のときでは動き方が異なるようなのですが
システムに返すの意味を勉強しろ
29デフォルトの名無しさん:04/11/05 12:09:24
Cの勉強する前にシェルとかバッチとか勉強しないんだろうか?
http://www.elect.chuo-u.ac.jp/tsuki/~tsun/lang/sh/006.html

&& で区切られた2つのコマンドがあった場合、
1番目のコマンドが 0 で終了した(正常終了した)場合のみ、
2番目のコマンドが実行される 。

|| で区切られた2つのコマンドがあった場合、
1番目のコマンドが 0 以外で終了した(異常終了した)場合のみ、
2番目のコマンドが実行される。
30デフォルトの名無しさん:04/11/05 12:46:50
[ ] で実行したり find -exec の条件にしたり
31デフォルトの名無しさん:04/11/05 15:31:26
DOS/Windowsだとこう使う。
http://forum.nifty.com/fpcu/dosvcmd/batch.htm#if
//hoge.c
int main() {
  if (エラー発生)
    return 1;
  else
    return 0;
}

rem foo.bat
hoge.exe
if errorlevel 1 echo プログラムでエラー発生!
32レベル1 ◆YCWSqVnnmg :04/11/05 16:49:49
今 猫でもわかる じゃあ情報が足り無そうなんで
ググっていろいろ調べてるんだけど

C言語だけの知識ではプログラム作って遊べないん?
DOSとかも勉強しないと駄目です?
33デフォルトの名無しさん:04/11/05 17:07:34
> return 0; はシステムに返すと書いてあるのですが
> たまに return -1; などを見かけます
>
> この -1 ってのはどこに返しているのでしょうか?

return 0;は0をシステムに返す。
return -1;は-1をシステムに返す、それだけだ。

とりあえずmain関数でのreturnされた値の行方なんて気にするな。
34デフォルトの名無しさん:04/11/05 17:18:58
教えたがりさんイパーイ
35デフォルトの名無しさん:04/11/05 17:27:56
>>33
知らないと馬鹿にされる。
あーこいつこんなことも知らないんだー
36デフォルトの名無しさん:04/11/05 17:42:31
( ´-`).oO( 0 と -1 の異なる動きってなんだろう・・・)
37デフォルトの名無しさん:04/11/05 18:52:18
/* ret-1.c */
int main(void)
{
return -1; /* システムに-1を返す */
}

/* ret0.c */
int main(void)
{
return 0; /* システムに0を返す */
}

/* test.c */
#include <process.h>
int main(void)
{
int ret;
ret=system("ret-1.exe");
printf("ret-1.exeの実行結果=%d\n",ret);
ret=system("ret0.exe");
printf("ret0.exeの実行結果=%d\n",ret);
}
38デフォルトの名無しさん:04/11/05 18:56:08
標準関数にsystem()っていうのがあるから
これ使えばシステムに帰ってくる値を見れる。
39大原ゆき ◆6iqfpMYUkI :04/11/05 22:24:26
>>32
私は整数論をやっているのですが、証明支援系をCで書いて、実際に使って遊んでいます。
40大原ゆき ◆6iqfpMYUkI :04/11/05 22:29:27
>>32
> 今 猫でもわかる じゃあ情報が足り無そうなんで
GUIは必須ではありません。CUIでも十分実用的なアプリケーションはできます。

> DOSとかも勉強しないと駄目です?
環境依存は極力避けましょう。
どうしてもしかたがない時だけにしてください。
41通りすがり:04/11/05 22:40:13

CってString型が無いのか。
char型の配列・・・欝だ・・・orz
42WksG ◆Wbwg9GCRpY :04/11/05 22:49:41
sage進行でいくのかな?

>>41
逆に楽でない?
一列まるごと指定すれば楽だし。

>>32

まず遊ぶ前にCを覚えましょう。
CはまだCUIですが、そこから発展していってWindowsプログラングを学べばいいのですから。

っと初心者が言ってみるテスト。

初心者と初心者が助け合う板ってカクイイな。。。。( ´ー`)y-~~
>CってString型が無いのか。
>char型の配列・・・欝だ・・・orz

マジかよ('A`)
44大原ゆき ◆6iqfpMYUkI :04/11/05 23:10:20
>>41
Cにはありませんが、C++にはSTLというのがあって、string、wstringが用意されています。
糞コテだらけだな(藁)
46レベル1 ◆YCWSqVnnmg :04/11/05 23:16:03
sage進行でいきましょうか


今日1日戻り値調べで消えちまった・・・・
47大原ゆき ◆6iqfpMYUkI :04/11/05 23:24:04
>>45
偉大なる京都人民の地名を愚弄するとは…
48デフォルトの名無しさん:04/11/05 23:30:13
まぁ>>47は知ったかで出鱈目なこと長々と書き込む椰子だから鵜呑みせずにな
是非ともsage進行で逝ってくれ
49大原ゆき ◆6iqfpMYUkI :04/11/05 23:53:47
>>48
私の発言に致命的な問題があれば、できれば教えてくださいね。
何も考えず書いている事が多いですから。
50WksG ◆Wbwg9GCRpY :04/11/06 00:27:54
じゃぁsage進行で逝きましょうか。

なんかもう一週間C勉強してないや・・・・orz

とりあえずコテハン使用の方は>>14にあるテンプレを駆使して開発環境を晒す。
はやくWindowsプログラミングできるまでになりたいなぁ・・・・・・

っと、ここで質問。
なにやら[XP]でCプログラム作成して実行すると、すぐに終了されてしまう。
一瞬記述したプログラムは動いているようだが・・・
これは getch(); を return 0; の前において実行する。

('A`)だっけ?
51デフォルトの名無しさん:04/11/06 05:09:41
>>50
いやはや何とも・・・
52デフォルトの名無しさん:04/11/06 07:48:47
Windowsの基本動作もわかってないね・・・・
53デフォルトの名無しさん:04/11/06 08:11:27
えーと、コンソールの使い方を知らないから
コンソールプログラム作ったけど、
自分で作ったコンソールプログラムがうまく使えない。
そういうことね。
54デフォルトの名無しさん:04/11/06 10:09:08
ここはアフォばっかりだな。
return -1; は 255 を返すんだろうが。
55WksG ◆Wbwg9GCRpY :04/11/06 13:50:06
C言語プログラミング教室
ttp://ecoeng.im.kindai.ac.jp/

初心者のためのポイント学習C言語
ttp://www9.plala.or.jp/sgwr-t/

猫でもわかるプログラミング
ttp://www.kumei.ne.jp/c_lang/

とりあえず猫でもを見て、わからなかったらここで質問っと。

香具師よ、暇そうだな('A`)
56大原ゆき ◆6iqfpMYUkI :04/11/06 16:21:01
>>55
ここはいったい何が解からない人の教室なのですか。
Win32APIの使い方教室ですか。
57デフォルトの名無しさん:04/11/06 16:29:39
>>56
スレタイの通りC言語教室だろ
58レベル1 ◆YCWSqVnnmg :04/11/06 21:28:20
>>56
ココはC言語の基礎中の基礎ですね

ウィンドウズプログラミングは無しの方向で

59WksG ◆Wbwg9GCRpY :04/11/06 21:52:31
>>56
その通り。
みんなで試行錯誤していけば徐々にわかってくると思う。
ケタ違いなミスをしても馬鹿にしないことだな。間違って間違って初めて自分のものになるんだからな。

とりあえず質問などをしていって一つ一つ問題を解決していって自分のスキルを上げていこう。
60WksG ◆Wbwg9GCRpY :04/11/06 21:53:18
>>58
その通り。
みんなで試行錯誤していけば徐々にわかってくると思う。
ケタ違いなミスをしても馬鹿にしないことだな。間違って間違って初めて自分のものになるんだからな。

とりあえず質問などをしていって一つ一つ問題を解決していって自分のスキルを上げていこう。

>>56でなく>>58だった。
61レベル1 ◆YCWSqVnnmg :04/11/06 22:11:29
ちょっと形式を変えてみた
初めてだからちゃんとできるかわからないけど

ホームページ上にプログラムを公開して
分からないところを質問するようにしようと思う


質問があります
http://www.geocities.jp/wdtks81/Creturn01.html
このプログラムの最後20行目に
return z; があるわけなんだけど

z に格納されている値(ここでは10×10=100が入ってる)を
11行目の 赤いfunc(a, b)に代入するって意味でいいんだよね?

62デフォルトの名無しさん:04/11/06 22:25:07
>>61
言い回しはおかしいがそういう理解でいいと思う。
ちなみにこうも書ける。
int func(int x, int y) {
  return x * y;
}
63レベル1 ◆YCWSqVnnmg :04/11/06 22:36:40
>>62
計算式でも戻り値はおkってことですね
ありがとうございます。



みんなの質問も私の分かる範囲でホームページに公開して行こうと思うので
プログラムをここに書き込むかどこかにうpしてもらえるとありがたいです

質問に答えていただける方はアンカーをつけていただけるととても助かります

皆さん宜しくお願いします

64大原ゆき ◆6iqfpMYUkI :04/11/06 22:48:12
書きます。
【OS】
Linux(debian), WindowsXP
【使用ソフト】
gcc3.3.4/emacs/gdb, VisualC++.NET2003
【使用参考書】
プログラミング言語C, プログラミング言語C++, Effective C++,
C言語による最新アルゴリズム辞典, Cによる理工学問題の解法,
The Art of Computer Programming,
計算機プログラムの構造と解釈, コンパイラとバーチャルマシン, コンパイラ,
憂鬱なプログラマのためのオブジェクト指向開発講座,
オブジェクト指向における再利用のためのデザインパターン,
実践UML-パターンによる統一プロセスガイド,
量子コンピューティング-量子コンピュータの実現へ向けて, 入門量子コンピュータ,
情報ハイディングの基礎, 電子透かしの基礎-マルチメディアのニュープロテクト技術,
Squeak入門-過去から来た未来のプログラミング環境,
ヒューメイン・インターフェース-人に優しいシステムへの新たな方針
ヒューマンインターフェースの発想と展開, アフォーダンス-新しい認知の理論,
LaTeX2e美文書作成入門, Wiki Way, オイラーの贈り物, 虚数の情緒,
金正日入門, 攻殻機動隊 STAND ALONE COMPLEX, 皇帝の新しい心,
知って得するソフトウェア特許・著作権,
etc..(一見関係なさそうな物もあるけれど、実は…)
【プログラミング経歴】
(略)
【質問・補足など】
(略)
65デフォルトの名無しさん:04/11/06 23:22:55
なにこの参考書
66デフォルトの名無しさん:04/11/06 23:57:33
とりあえず、コテハン隔離スレってことでよろしく。
67WksG ◆Wbwg9GCRpY :04/11/07 00:18:46
>>64
【プログラミング経歴】
記入必須だが。参考書見てもなにこれ・・・みたいな感じなので、再記入よろしく。
参考書を見る限りえらい経歴長そうだな。
結構C詳しそうだしな。
68デフォルトの名無しさん:04/11/07 01:17:52
どうみても、漏れはこれだけ勉強してるんだぞ、という自己主張だろ
Cの中級者でもわかるような質問にすら答えられない様子だと
全部理解してるわけでもないだろうし

というより、会話のキャッチボールができないっぽいから
↑のような並べ方したのかも知れんが
69デフォルトの名無しさん:04/11/07 01:24:32
あーあ、スレの空気崩れちゃった
70デフォルトの名無しさん:04/11/07 01:25:01
そもそも題名だけで関係ないとわかるような本ばっかじゃん(プ
71デフォルトの名無しさん:04/11/07 01:26:51
攻殻機動隊はなんとなくわからんでもないが、
金正日入門は明らかにちがうだろw
72デフォルトの名無しさん:04/11/07 01:28:53
>>69
C関連のスレ大杉
このスレもいらんだろ
73デフォルトの名無しさん:04/11/07 01:37:01
>>72
有意義なスレなら否定されないだろうけどな
このスレはどうみても、糞コテの日記帳にしかなってない

糞コテ隔離としてなら十分機能しそうだが
それでもやっぱりゴミには変わらん罠
74大原ゆき:04/11/07 01:44:30
>>67
手短に。コンピュータを触ってから10年ほど経ちます。

>>68
> 漏れはこれだけ勉強してるんだぞ、という自己主張だろ
はい、そうです。
しかし、経歴を書かなくてもどのような勉強をしてきたのかが良く判るでしょう?

> Cの中級者でもわかるような質問にすら答えられない様子だと
どんな質問がありましたか?

> 全部理解してるわけでもないだろうし
それは当然。
貴方は何の参考文献も無しに論文が書けますか?

> というより、会話のキャッチボールができないっぽいから
> ↑のような並べ方したのかも知れんが
人とコミュニケーションをとることはできますが、経歴や質問補足(感想)まで
書きだすとずいぶん長くなるでしょう?
手抜きしました。
75デフォルトの名無しさん:04/11/07 01:50:33
自己主張するには論文でも挙げてくれた方が早い。
どの分野でどの程度のことをやっているのかもわかるし。
76大原ゆき:04/11/07 01:53:59
>>75
私の事を必要以上に詳しく知る必要はありません。
ここは自己紹介スレではないでしょう?
参考書を挙げたのもプログラミングするにあたり有益な書籍を示す、
という意味もあります。
77デフォルトの名無しさん:04/11/07 01:54:30
このスレの最大の汚点>>74
偽か知らないがまぁどっちだっていいや

>>1
変な椰子に板に常駐されてご愁傷様^^
78デフォルトの名無しさん:04/11/07 01:55:52
>>76
つまり、あなたの自己満足スレということでOK?
79大原ゆき:04/11/07 01:57:01
>>78
自己満足だけでなく、これからコンピュータに携わる初心者にとっても有益です。
80デフォルトの名無しさん:04/11/07 01:57:01
C言語に限定してなけりゃまだマシだっかもな、
まぁ一番の原因はつまらないネタをやった大原たんだけど
81デフォルトの名無しさん:04/11/07 01:58:09
>>80
そんなあなたは本人と息がぴったりw
82デフォルトの名無しさん:04/11/07 01:58:55
>>79
あの本が?(藁
単なる自慢としか受け取れないけどな。
83デフォルトの名無しさん:04/11/07 01:59:28
>>81
(lii´Д`)
84デフォルトの名無しさん:04/11/07 02:03:13
変にプライド「だけ」高い香具師だなw
85デフォルトの名無しさん:04/11/07 02:03:25
一人の生徒のささいな行動が学級崩壊を生む事だってあるのさ
86デフォルトの名無しさん:04/11/07 02:04:29
>>85
多分、本人は先生のつもりだ。
87デフォルトの名無しさん:04/11/07 02:04:33
>>84
人はそれを厨房と呼ぶのだよ
88大原ゆき:04/11/07 02:05:14
>>82
単なる自慢に見えるのは、私が挙げたからではありませんか?
89デフォルトの名無しさん:04/11/07 02:05:53
>>86
なるほど、やっぱり教職ってのは甘いな ペッ( ゚Д゚)、
90デフォルトの名無しさん:04/11/07 02:07:18
>>88
お前は遠まわしに「自分はすげぇぞ」と言ってる訳だがw
91デフォルトの名無しさん:04/11/07 02:08:17
アチャー(ノ∀`)
92デフォルトの名無しさん:04/11/07 02:08:36
技術なくてプライドだけ高くて口だけな香具師が一番困るよな
93大原ゆき:04/11/07 02:09:40
>>90
もしそうだとしても、そうでないとしても、問題はなさそうですね。
ところで、その発言は何かの役に立つ発言ですか?
94大原ゆき:04/11/07 02:10:37
>>92
確かにそうですね。
95デフォルトの名無しさん:04/11/07 02:10:47
業務に全く関係ないのに、やたら計算機科学関連の知識を自慢してる奴っているよな。
96デフォルトの名無しさん:04/11/07 02:12:04
>>93
有益なことしか考えない内はまだまだだよ君ぃ( ´ー`)y―┛~~



オコッテルオコッテル
97デフォルトの名無しさん:04/11/07 02:13:03
>>94
えーと、>92はー君のーことーだよーね?
98デフォルトの名無しさん:04/11/07 02:13:38
皮肉られてるのに自分のことだって気付かない香具師もまた困るよなw
99デフォルトの名無しさん:04/11/07 02:14:30
ダイテル→やさしいコンピュータ科学→計算機プログラムの構造と解釈
→ダイテルに戻る

そして、ヘネパタでアーキテクチャやったり、コンパイラ勉強したり
ネットワーク勉強したりする。

そんで
標準講座C++→Accelerated C++→Effective C++→C++再考
とかやったりやらなかったり

キュピーーン☆

まだダイテル始めたばかり…orz
100大原ゆき:04/11/07 02:14:40
>>97
ソースは?
101デフォルトの名無しさん:04/11/07 02:15:36
>>100
なんでソース?
102デフォルトの名無しさん:04/11/07 02:16:00
>>100
ソースは>>100
最近はこういう絵に描いたような厨房に付いていけないのは年のせいですか?('A`)
104デフォルトの名無しさん:04/11/07 02:20:02
>>103
お前は勉強してろ
105大原ゆき:04/11/07 02:20:06
お祭り楽しいですね^^
今日はとても楽しめました。
さて、そろそろ睡眠をとりますので、みなさん、おやすみなさい。
いくつかの質問には答えていませんが、お祭りはおしまいです。
106デフォルトの名無しさん:04/11/07 02:22:20
さて変な先生は教育委員会に連れて行かれたことだし
このスレをどうしようも>1の自由だ
107デフォルトの名無しさん:04/11/07 02:25:52
大原ゆきの醜態
http://pc5.2ch.net/test/read.cgi/tech/1099212476/119-135


>>105
枕濡らすなよ^^
108大原ゆき:04/11/07 02:30:03
>>107
うわっ、これは恥ずかしいですね〜
109デフォルトの名無しさん:04/11/07 02:30:18
「賢者は学びたがり、愚者は教えたがる。」
110デフォルトの名無しさん:04/11/07 02:31:23
>>108
寝ろよ
111デフォルトの名無しさん:04/11/07 02:32:53
麻原ゆきって誰ですか?

アーなんとかチャーですか?
112デフォルトの名無しさん:04/11/07 02:35:31
こういう奴ってやっぱり寝るとか何とか言ってその後もじーっと見てるもんだよな
113大原ゆき:04/11/07 02:42:02
>>112
どうせ構ってほしいだけのキモオタだろw
寝ろよ
115デフォルトの名無しさん:04/11/07 02:51:13
ネルネルネールネ
116デフォルトの名無しさん:04/11/07 02:52:49
113 :大原ゆき :04/11/07 02:42:02
  ↑
  どうせ構ってほしいだけのキモオタだろw
117デフォルトの名無しさん:04/11/07 02:54:30
晒しage!!!
118大原ゆき:04/11/07 03:03:20
お前等氏ねよ
119デフォルトの名無しさん:04/11/07 03:05:11
age!!!
120デフォルトの名無しさん:04/11/07 03:11:32
ここって何のスレ???
121デフォルトの名無しさん:04/11/07 03:21:03
糞コテホイホイ
122大原ゆき:04/11/07 03:31:15
じぶんらだってどうせプログラムなんか作れねぇんだろうが。
さっさと氏ね、何が厨房だ、お前等だろうがそれは。
くだらねぇことしか考えられねーのかよ全く。
じゃあ聞くけど、お前等そんなに参考書も読まずにできるのか?
え?出来るわけ無いだろうが、自分の事は棚にあげてよー。
んっっっとに糞な奴等だなwwwww
123デフォルトの名無しさん:04/11/07 03:34:40
>>122
25点
124デフォルトの名無しさん:04/11/07 03:46:20
少なくとも2,3冊も読めば>>107のような醜態は晒さないと思うなw


トリップないから偽者な気もするけど
本人も>>122も似たようなもんだから無問題ヽ(´ー`)ノ
遅くまでご苦労様です^^
125デフォルトの名無しさん:04/11/07 03:58:30
えーと?あら?あらら?
126デフォルトの名無しさん:04/11/07 04:06:48

           〈 ̄` ヽ
            ヽー l/|     ほほほ!その臭う口をとじなしゃれ
         ミ(・∀・ )l彡
   /"\   __ / `ー´  \
     ̄ s ̄  /    sー `ヽ
      l/  |    イ    |
      |i   |,,,  ,,, ,,,|    |
      |i__〈_ロ___ヽ__,ノ
       ii  |   |     ◎| ii
         ヽ◎__ヽ_◎,,ノ
           ー" (ヘ_ノ

127デフォルトの名無しさん:04/11/07 04:55:36
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
return -1; は 255 を返す
128デフォルトの名無しさん:04/11/07 07:02:57
NT系は違うみたいだな。>return -1; は 255 を返す
129レベル1 ◆YCWSqVnnmg :04/11/07 09:08:52
皆さん、おはようございます

おうおう
妙にレスがついてると思ったら
煽りや偽り人じゃねぇか

ここはそんなスレじゃないので
勘弁してください
130デフォルトの名無しさん:04/11/07 10:01:14
トリップ付けずに発言して、
あれは私の発言ではありません って言うつもりなんだろ( ´,_ゝ`)
131大原ゆき:04/11/07 10:57:35
すみません、みなさん、あれは私の発言ではありません
132WksG ◆Wbwg9GCRpY :04/11/07 14:03:37
>>129
もはよう('A`)
>>131
何がしたいのか解らないが、釣らず釣られず。2ちゃん使ってるならいくら厨房でもわかることでしょう。
てかトリップ必須。名無しは無視傾向で。

てことで糞厨房もここでおしまい。

−−−−−−−−−− 糸冬 了 −−−−−−−−−−−

てことで初心者に初心者が質問を投げかけ上級者は優しくも厳しく指摘するスレ再開。
133デフォルトの名無しさん:04/11/07 14:06:42
それを自治厨と言うんj
134デフォルトの名無しさん:04/11/07 14:59:42
ところでレベル1はどうしたらレベル2になるつもり?
135デフォルトの名無しさん:04/11/07 15:08:50
いまだにこのスレが正常だと思ってる香具師がいるよ…
>>1の時点で終わってたことに気付けってw

ここは日記帳じゃないんだぞ?
136レベル1 ◆YCWSqVnnmg :04/11/07 15:19:07
>>134
一生レベル1のままだぞ 多分

>>135
ここは日記みたいな物ですよ



今日は構造体の質問なんですが
http://www.geocities.jp/wdtks81/struct01.html

この2個は内容的にはまったく同じで間違いなしですか?
137デフォルトの名無しさん:04/11/07 15:23:04
まて!


















書籍買ったほうが早い。
138デフォルトの名無しさん:04/11/07 18:39:06
>>136
上の変数名はMYDATA/LPMYDATA
下の変数名はmydata/lpmydata
だけどあとは同じ
139レベル1 ◆YCWSqVnnmg :04/11/07 19:00:02
>>138
内容は同じと

っというと

typedef と struct の違いといいますか何といいますか
使い分けするときってどんなときがあるのでしょうか?
140デフォルトの名無しさん:04/11/07 19:01:28
見りゃ和姦だろ
君、見込みないよ
141デフォルトの名無しさん:04/11/07 19:10:14
>>139
typedefは、文字どおり定義するということなんだ。
例えば、
typedef 髪の毛が薄い40過ぎの男性 ハゲオヤジ;
のようなもの。
髪の毛が薄い40過ぎの男性などと長々と書きたくはないだろう?
同じように
typedef struct {〜} hoge;
とすることで
struct hoge foo;
と書かずに
hoge foo;
だけで済むようになる。
142レベル1 ◆YCWSqVnnmg :04/11/07 20:24:14
>>138
>>140
ありがとうございました
構造体変数名を書くのがちょっと簡単になるだけなんですね

143デフォルトの名無しさん:04/11/07 20:54:50
おまいら、自分で調べない典型的な教えて君にレスするな。
144デフォルトの名無しさん:04/11/07 20:56:55
教えてクンと教えたがりチャンのスレでも作るか
145デフォルトの名無しさん:04/11/07 20:59:02
ここがそうじゃないの?
146デフォルトの名無しさん:04/11/07 21:05:44
「C言語教室」って書いてあるょ
147デフォルトの名無しさん:04/11/07 23:40:05
皿仕上げ!
148デフォルトの名無しさん:04/11/08 12:58:29
どうやら大原が教師でレベル1とWksGが生徒という
糞な教室になったようですね^^





そんなんならどっかのチャットでやってろ
149デフォルトの名無しさん:04/11/08 13:02:41
>>148
もともと糞ですが。
150デフォルトの名無しさん:04/11/08 13:05:25
>>149
あいや失敬
151レベル1 ◆YCWSqVnnmg :04/11/14 01:24:22
誰も書き込みねぇ・・・

まぁいいかおいらの日記みたいになってるしね

ある程度初期の事分かってきたつもりだけど
引数や構文が曖昧なので
また「猫でもわかる」読み直してます





ここはお前の日記じゃねぇんだ
チラシの裏に・・なっ!
152デフォルトの名無しさん:04/11/20 18:01:15
c言語プログラミングレッスン 入門編
って本の次に読むに適した参考書って何がいいかなー?
基本より一歩進んだ感じの本がいいんだけど

環境は VC++6.0 
153デフォルトの名無しさん:04/11/22 15:13:51
死ぬまでレッスンしてろ
154デフォルトの名無しさん:04/11/22 21:15:11
c言語プログラミングレッスン 青春編
155デフォルトの名無しさん:04/11/22 22:13:23
俺は16歳で童貞。
スーパープログラムーになるためにはるばる上京してきた。

新たな学び舎となるここは殺伐とした環境だ。
おもしれぇ!やってやろうじゃねぇか!

そして俺の青春は始まった!
156デフォルトの名無しさん:04/11/24 01:32:41

>>155
ここが学び舎なら
君の青春は既に終わってる
157受験生 ◆3VUXqvbfSY :04/11/24 05:25:54
参加します……

OS W2000
開発環境 VC++
参考文献 最新アルゴリズム事典
経歴 不明
158デフォルトの名無しさん:04/11/24 11:00:36
>>157
いや駄スレで機能してないのでsageてくれよ
159デフォルトの名無しさん:04/11/24 23:40:50
>>157
受験生がこんなとこで遊んでていいのか?
160ギゥイチ ◆xYpGgFGvDo :04/12/13 11:43:14
【OS】
XP
【使用ソフト】
VC++
【使用参考書】
独習C
【プログラム経歴】
初心者
【質問・補足など】
はじめまして、ヒッキーなのでここで遊びます よろしくおねがいします
161もにゅ ◆KorX0HCHGU :05/01/01 01:40:51
【OS】
 : Win2000
【使用ソフト】
 : BCC
【使用参考書】
 : C言語プログラミングレッスン【著:結城浩】
【プログラム経歴】
 : 1週間
【質問・補足など】
 : よろしくお願いします。
162デフォルトの名無しさん:05/01/09 20:01:58
ちゃんと勉強が進んでるのかよ・・・・と小一時間(ブツブツ
163デフォルトの名無しさん:05/01/23 01:27:19

#include <stdio.h>

int main(void)

{

/*画面に表示*/
printf("ぬるぽ\n");
printf("\n\n\n\n\n");
printf("ガッ\n");

return 0;

}

初心者が覚えるべきソースコードはこれだ!!!
164デフォルトの名無しさん:05/01/23 08:33:16
int a,b,c;
printf("a=?");scanf("%d",&a);
printf("b=?");scanf("%d",&b);
c=a+b;
printf("a=%d, b=%d\n",a,b);
printf("a+b=%d\n",c);
165デフォルトの名無しさん:05/01/23 08:44:56
int i,j,m=9,n=9;
for(j=1;j<=n;j++)printf("\t(%d)",j);
printf("\n");
for(i=1;i<=m;i++){
printf("(%d)",i);
for(j=1;j<=n;j++)printf("\t%d",i*j);
printf("\n");
}
166デフォルトの名無しさん:05/01/23 08:55:05
164のコードをscanfを使わないようにしたもの。
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
    int a, b;
    char Buf[256];
    printf("a=?");
    fgets(Buf, sizeof Buf, stdin);
    a = atoi(Buf);
    printf("b=?");
    fgets(Buf, sizeof Buf, stdin);
    b = atoi(Buf);
    printf("a=%d, b=%d\n" "a+b=%d\n", a, b, a + b);
    return 0;
}
167一見孤児:05/01/23 09:05:40
局所変数の頭を大文字にするな。
マナーと互換性を気にするなら、stdlib.hはstdio.hより先に書き、sizeofの後は()で囲め。
168デフォルトの名無しさん:05/01/23 09:11:29
規格を守らないコンパイラなんぞしるか。
規格でインクルードの順は決められてなんかいないし、
sizeofにカッコが必要なのは型名だけとなっている。
169一見孤児:05/01/23 09:17:14
/* 次は文字と文字列だ */
char s1[]="abcABC123";
char s2[]="あいうアイウ亜衣宇";
printf("s1:\"%s\"\n",s1);
printf("s2:\"%s\"\n",s2);
s1[3]='d';s1[4]=0x46;s2[3]='1';
printf("s1:\"%s\"\n",s1);
printf("s2:\"%s\"\n",s2);
170デフォルトの名無しさん:05/01/23 09:24:07
>>169
ちなみに'\x46'なんて書き方もある。
171一見孤児:05/01/23 09:30:34
int i;
char abc1[26+1];
char abc2[26+1];
for(i=0;i<='z'-'a';i++)abc1[i]=i+'a';
abc1[i]=0;/* 0終端。文字列の終わり */
for(i=0;i<='Z'-'A';i++)abc2[i]=i+'A';
abc2[i]='\0';/* これも0終端 */
printf("abc1:\"%s\", abc2:\"%s\"\n",abc1,abc2);
printf("12th abc:'%c'\n",abc1[12-1]);
172一見孤児:05/01/23 09:37:26
i: 0..'z'-'a'ならば
i+'a': 0+'a'..('z'-'a'+'a') == 'a'..'z'.
区間チェック完了。
173デフォルトの名無しさん:05/01/23 09:52:00
long find(long x, long array[], long n)
{
  long low = 0, high = n, mid;
  while (low <= high) {
    mid = (low + high) / 2;
    if (x < array[mid])
      high = mid;
    else if (x > array[mid])
      low = mid;
    else
      return mid;
  }
  return -1;
}
174一見孤児:05/01/23 10:12:59
/* 型とサイズ */
char c;int i;long l;
char s[3];int a[3];long b[3];
printf("%d %d %d\n",sizeof c,sizeof i,sizeof l);
printf("%d %d %d\n",sizeof s,sizeof a,sizeof b);
printf("%d %d %d\n",sizeof s[0],sizeof a[1],sizeof b[2]);
#define ARYLEN(ary) (sizeof(ary)/sizeof(ary[0]))
printf("%d %d %d\n",ARYLEN(s),ARYLEN(a),ARYLEN(b));
175デフォルトの名無しさん:05/01/23 10:26:59
>>171
charに対しては0よりも'\0'を使うのが普通。
Cでは完全に同一なんだけどな。

さっきからツッコミばかりでスマソ
176デフォルトの名無しさん:05/01/23 10:28:59
誰か生徒はいませんか?
177デフォルトの名無しさん:05/01/23 10:46:26
┏━━━━━━━━━━┓
┃生徒たちは全滅した…┃
┗━┏━━━━━━━━━━━━━┓
  ┃→パートで稼いでやり直す ┃
  ┃ プログラマをあきらめる ┃
  ┗━━━━━━━━━━━━━┛
178デフォルトの名無しさん:05/01/23 16:01:53
糞スレあげ
179デフォルトの名無しさん:05/01/23 16:26:16
scanfを使って
50 24 20 39
と標準入力した数字を読み取る方法を教えてください。
何の参考書見ても分からん・・・。
馬鹿だからとかいわんこうに、教えてください
180デフォルトの名無しさん:05/01/23 16:36:38
int a,b,c,d;
scanf("%d %d %d %d",&a,&b,&c,&d);
これでいいか?
181デフォルトの名無しさん:05/01/23 16:40:01
入力する個数が決まってなかったらどうするんですか?
182デフォルトの名無しさん:05/01/23 16:40:56
>179
VC++があるならそのヘルプを、LSI-C86があるならそのマニュアルをみて「scanf」を検索。使い方が書かれている。
183デフォルトの名無しさん:05/01/23 16:51:07
>181
まず、数と行を蓄える配列を用意する。蓄える配列などをバッファ(buffer)という。
そして、fgetsで一行読んでバッファに格納し、そこから改行や数値の最初の文字を探し、数値がある位置からatoiやsscanfで読み取るのを繰り返せばいい。
184デフォルトの名無しさん:05/01/23 16:57:45
個数が多いと予想されたら、固定長のメモリを確保する配列ではなく、動的にメモリを確保したり、長さを変えられる動的メモリ割り当て(dynamic memory allocation)を使う。malloc,calloc,realloc,freeを参照。
185デフォルトの名無しさん:05/01/23 17:19:58
なーんて、一気に教えるとついてこないんだな、これが!
186デフォルトの名無しさん:05/01/23 17:24:51
関数なんて山ほど出てくるんだから、ここで全部教えていたら百年掛っちゃうよ。早くマニュアルを見つけるんだね。
187デフォルトの名無しさん:05/01/24 01:53:05
キーボードから入力を受付けるときに、
「キー連打」と「一定時間以上キー押しっぱなし」
を区別したいのですが、どうすればよいでしょうか?

kbhit()とgetch()を使ってキー入力を判断しているのですが、
私には今のところ、区別できません。

だれか教えてください。
よろしくお願いします。
188デフォルトの名無しさん:05/01/24 08:02:34
押しっ放しはkbhitが反応しっ放し
連打はkbhitが反応しないことがある
189デフォルトの名無しさん:05/01/24 14:13:01
BOOLOP func_a(unsigned int id, const char *pName)
{
BOOLOP ret;

ret = func_b(id, pName, 1);

ret &= funcb(id, pName, 2);

return ret;
}
190デフォルトの名無しさん:05/01/28 10:35:37
sage放置にご協力を
191デフォルトの名無しさん:05/02/15 12:31:35
sage放置にご協力を
192デフォルトの名無しさん:05/02/15 13:56:49
ASCII文字列を入力して以下のデータプロトコルに従って10進小数点数に変換するCのプログラムを書きなさい。という問題なんですが、もし分かったら教えてください。

1バイトめ: 小数点の前のの桁数 (非パック化BCD)
2バイトめ: 小数点の後の桁数 (非パック化BCD)
3バイトめ: 最上位数 (非パック化BCD)
4バイトめ: 最下位数の次の桁等 (非パック化BCD)
9バイトめ: 最上位数10進数 (非パック化BCD)
N+1バイトめ: 最下位数の次の10進数等 (非パック化BCD)
193デフォルトの名無しさん:05/02/15 16:12:26
ファイル名に連番を付けたいんですが、うまくいかないんです。
forループのカウントをそのまま使えないかな?と、、

for(count = 0 ; count < 3 ; count++){
fileName = "test" + count1 + ".txt";
fp = fopen(fileName , "w");
fclose(fp);
}

なんかオペランドがillegalとエラーを出します。
どうしたらいいか、教えてスーパーハカーさま
194デフォルトの名無しさん:05/02/15 16:37:44
Delphiとか他の言語なら出来そうやな
strcpy使わないとあかんのとちゃうの
195デフォルトの名無しさん:05/02/15 16:42:42
for(count = 0 ; count < 3 ; count++){
sprintf(fileName, "test%d.txt", count);
fp = fopen(fileName , "w");
fclose(fp);
}
196193:05/02/15 16:56:36
おお、でけた!エラー無しでコンパイルできました。
>195さま、ありがとうございます。

>194さま、ご意見ありがとうです。
さっきの書き込みの後、strcatとかでも出来ないかと検索してました。
197デフォルトの名無しさん:05/02/15 23:30:52
>>193
VBを勉強してからCを勉強すると、たかだか文字列の連結に関数を
持ち出してこなゃいけないのに驚くだろうね。ゴキブリをつぶすのに
ロードローラーを持ち出すような大げさな感じになる。

でも逆にCやPacalやModula-2という言語を経験してからVBの世界に入ると、
変数の型がラフなのに、ものすごくとまどうんだわ。たとえば193の例だと、
fileName = "test" & str$(count) & ".txt"
って書きたくなるんだ。もちろん
fileName = "test" & count & ".txt"
でも、暗黙の型変換が行われて正しく動作するのは理解しているん
だけど、落ち着かない気がする。なんか、心配性なのかなぁ。

198デフォルトの名無しさん:05/02/16 00:04:20
俺、>>1より頭悪いな。
「猫でもわかる」のサイト見てBorland C++ 5.5、Borland Turbo Debugger 5.5、
setbcc15b、BCC Developer 1.2.21と落としてインスコしたけどワケワカメ。
とりあえず家の猫にモニター見せたが知らん顔。
「猫ならわかる」の間違えではないらしい。

本を買えという事だろうか?
199デフォルトの名無しさん:05/02/16 09:40:29
何がわからんのか書け
200デフォルトの名無しさん:05/02/16 17:14:49
(書いたら書いたで、スレ違いと言われ、追い払われる予感。
201デフォルトの名無しさん:05/02/16 18:35:41
以下のプログラムを初心者にもわかりやすいように書き換えるとどうなりますか?

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <float.h>
#define samesign(x, y) (((x) > 0) == ((y) > 0)) /* 同符号なら真 */

double F(double a, double b, double tolerance,
double (*f)(double), int imax, char **error)
{
int i;
double c, fa, fb, fc;

*error = NULL;
if (tolerance < 0) tolerance = 0;
if (b-a < 0) { c = a; a = b; b = c; }
fa = f(a); if (fa == 0) return a;
fb = f(b); if (fb == 0) return b;
if (samesign(fa, fb)) {
*error = "同符号.";
return 0;
}
202デフォルトの名無しさん:05/02/16 18:36:26
for (i = 0; ; i++) {
c = (a + b) / 2;
if (c - a <= tolerance || b - c <= tolerance) break;
if (i < imax) {
c = (a * fb - b * fa) / (fb - fa);
if (c <= a) c = a + 0.6 * DBL_EPSILON * fabs(a);
else if (c >= b) c = b - 0.6 * DBL_EPSILON * fabs(b);
}
fc = f(c); if (fc == 0) return c;
if (samesign(fc, fa)) { a = c; fa = fc; }
203デフォルトの名無しさん:05/02/16 18:37:04
else { b = c; fb = fc; }
}
return c;
}

int count;
double func(double x)
{
double value;

value = 6.72*pow(10,-4)*(1000-x)-5.67*pow(10,-8)*0.5*(pow(x,4)-pow(600,4));
printf("%d x = % 3g f(x) = % 3g\n",
++count, x, value);
return value;
}

int main()
{
char *error;
double x;


count = 0;
x = F(500, 650, 0, func, 1000, &error);
if (error) printf("%s\n", error);
else printf("x = % -24.16g\n", x);

return EXIT_SUCCESS;
}
204デフォルトの名無しさん:05/02/16 20:41:25
>>201
>以下のプログラムを初心者にもわかりやすいように書き換えるとどうなりますか?
冗長になると思う。

全く同一の仕様で書き換えるか、関数仕様から見直すかでも変わるが。
205デフォルトの名無しさん:05/02/16 21:13:23
ヲメーラもう少し美しく書けねーのカヨ

    m9(`Д´) プギャー

    m9(`Д´) プギャー

206デフォルトの名無しさん:05/02/18 18:14:54
C言語で複素数の四則演算プログラムがわかりません‥‥
アドバイスお願いします。
207デフォルトの名無しさん:05/02/18 18:49:20
>>201
遠慮せず構造体使う方が分かりやすいし教えやすい
208デフォルトの名無しさん :05/02/21 02:37:38
これの意味教えてください。

 x = (1 << K) - 1L;

この一番右の『1L』ってのがlong ってのはなんとかググれたんですが、
(1 << K)の『<<』の意味がわかりません・・・。
209デフォルトの名無しさん:05/02/21 11:01:10
ビットシフト。
つか C 演算子 でぐぐれよ
210デフォルトの名無しさん:05/02/21 23:46:14
すいません。ちょっとお尋ねしたいのですが、整数の除数と剰りを求めたいとき

(x, y, div, amari 全て int)

div = x / y;
amari = x % y;

とするのと

div = x/y;
amari = x -(div*y)

て、どちらが早いんですかね。。つまらないことなんだけど。
ある意味、C言語の質問じゃないかもしれないけど。。
211デフォルトの名無しさん:05/02/21 23:50:31
一概には言えないが、単純に演算回数が少ない方が有利だと思う。
つーか、ほんの僅かでも高速化したいというのでもない限りは
読みやすい(≒保守しやすい)方を選ぶべきだろう。
212デフォルトの名無しさん:05/02/22 00:03:46
>>211
そうですかー ありがとう。
213デフォルトの名無しさん:05/02/22 02:03:31
>>209

すいません。「C言語プログラミングレッスン文法編」っての
持ってたの忘れてました^^;
回答ありがとうございました。ほかの疑問点もなんとか解決しました。
214デフォルトの名無しさん:05/02/23 18:09:28
>>210
stdlib.hにdiv関数がある。戻り値は商と余の構造体。
215デフォルトの名無しさん:05/02/23 23:26:09
>>214
ありがとう。それを使うことにします。
標準ライブラリだから、一番コンパイラに最適化されそうだし。
216デフォルトの名無しさん:05/03/18 00:10:19
const char* PRINT = "@print";

void read_script(char* script) {

char token[] = " \t\n";
char* buf;
buf=strtok(script, token);
while (buf != NULL) {
if (strcmp(buf, PRINT) == 0) {
buf = strtok(NULL, token);
char subToken[] = "\"";
char* subBuf;
subBuf = strtok(buf, subToken);
printf("%s", subBuf);
}
buf = strtok(NULL, token);
}
}

もっとスマートな書き方ないでしょうか?
217デフォルトの名無しさん:05/03/18 02:00:20
C言語は2038年(多分)に日付を管理する変数が使えなくなるとか聞いたんですけども、それは今どうなってるんでしょうか?
使えなくなるのを待つのみになるんですかね?
218デフォルトの名無しさん:05/03/18 02:14:23
>>217
使えないのはお前自身だ
219217:05/03/18 02:36:38
>>218
意味がよくわからんのですが。
220デフォルトの名無しさん:05/03/18 02:49:59
どうなっているのか、調べる能力すらも無い奴は使えないって事だろ
221デフォルトの名無しさん:05/03/18 07:54:43
>>216
strtok()を使わないでsscanf()で頑張ってみるとか。
222デフォルトの名無しさん:05/03/18 07:56:31
そんな先のこと心配するなw
223デフォルトの名無しさん:05/03/18 08:02:33
ローン計算などのプログラムは、そうも言ってられないがな
224デフォルトの名無しさん:05/03/18 20:31:23
>>220
だなぁ。
C の問題じゃないのに、聞いた話を調べもせず真に受けてるし。
225217:05/03/19 17:36:48
すいません、自己解決しました。

>>220,222
確かにそうですね。
226ビギナー:05/03/19 18:33:13
良いC言語のエディタ教えてください。無料で...
227デフォルトの名無しさん:05/03/19 18:48:02
マルチうざ
228デフォルトの名無しさん:05/03/19 21:20:06
>>226
VisualStudio.net C++
229完璧じゃないプログラム:2005/04/16(土) 22:35:26
指定された文字列の各要素について、比較文字列2の比較文字列1と異なる文字を
置き換えて記録するプログラムです。
以下にソース書きます。
230完璧じゃないプログラム:2005/04/16(土) 22:36:14
#include <stdio.h>
#include <string.h>

#define COL 100

int strrepc(const char* s1, char* s2, const char c){
int cnt;
cnt = 0;
/*       ここから                  */
while(*s1 != '\0' || *s2 != '\0'){
if(*s1 != *s2){
*s2 = c;
cnt++;
}
s1++;
s2++;
}
*s2 = '\0';
/*       ここまで                  */
return cnt;
}

void cut_newline(char* s){
char* sp;

sp = strchr(s, '\n');
if(sp != NULL){
*sp = '\0';
}
}
231完璧じゃないプログラム:2005/04/16(土) 22:37:27


void main(void){
char s1[COL] = "";
char s2[COL] = "";
int cnt;

printf("比較文字列1を入力してください     :");
while(fgets(s1, COL, stdin) != NULL){
cut_newline(s1);
printf("比較文字列2を入力してください(置換前):");
fgets(s2, COL, stdin);
cut_newline(s2);
cnt = strrepc(s1, s2, '#');
printf("置換後の比較文字列2          :%s\n", s2);
printf("異なる文字の個数            :%d個\n", cnt);
printf("比較文字列1を入力してください     :");
}
}
232完璧じゃないプログラム:2005/04/16(土) 22:38:09
【実行結果】
比較文字列1〜:abcdefg
比較文字列2〜:abbdegf
置換後〜   :ab#de##
異なる文字の〜:3個
比較文字列1〜:abcdefg
比較文字列2〜:abb
置換後〜   :ab#####
異なる文字の〜:5個
比較文字列1〜:abc
比較文字列2〜:abbdegf
置換後〜   :ab#####
異なる文字の〜:5個
比較文字列1〜:abcd
比較文字列2〜:aa
置換後〜   :a######
異なる文字の〜:6個
-------------------------------------
↑最後は「a###」「3個」となるようにしたいのですが、
なぜか上のような結果になってしまいます。
ソースの「/*ここから*/」から「/*ここまで*/」までで
書き換えて実現するにはどうすればいいんでしょう?
233デフォルトの名無しさん:2005/04/16(土) 22:38:13
較文字列2の比較文字列1と異なる文字を置き換える。


わかりにくいな。
そんなんじゃまともなレスは望めない。
234デフォルトの名無しさん:2005/04/16(土) 22:39:40
宿題ならスレ違い。
今から宿題スレに行っても、マルチで無視されるから。
残念だったね。
235デフォルトの名無しさん:2005/04/17(日) 04:44:13
>>229
s1++;
s2++

if(*s1!='\0') s1++;
if(*s2!='\0') s2++;
にする。
236235:2005/04/17(日) 05:20:20
>>229
ごめん、ちょっと違ってた。これで大丈夫。たぶん。

/*       ここから                  */
while(*s1 != '\0' || *s2 != '\0'){
if(*s1 != *s2){
if(*s2=='\0') *(s2+1)='\0';
*s2 = c;
cnt++;
}
if(*s1!='\0') s1++;
s2++;
}
/*       ここまで                  */
237229-232:2005/04/18(月) 14:12:04
>>235-236
お〜できました。
完璧なプログラムでつね。
ほんとありがとうございました!!
238デフォルトの名無しさん:2005/04/18(月) 21:44:28
線形探索をポインタ配列を使って、実現せよ。という問題がわかりません。
ポインタ配列と、文字列の比較って、できますか?
239デフォルトの名無しさん:2005/04/18(月) 21:46:32
って、ここで書いちゃいけなかったのかな・・・
240デフォルトの名無しさん:2005/04/18(月) 21:57:02
>>238
馬鹿は消えろ
241ビギナー:2005/04/19(火) 16:57:49
プログラムをコンパイルしたときに、エラーメッセージで外部シンボルmainが
未解決と表示され、一向にコンパイルできません。どなたかわかりますでしょうか?
242デフォルトの名無しさん:2005/04/19(火) 16:58:55
>>241
馬鹿は消えろ
243デフォルトの名無しさん:2005/04/19(火) 16:59:33
>>241
mainが見つからないので、コンパイル済みのオブジェクトモジュールとスタートアップモジュールをリンクできないのでしょう。
main関数を用意するか、リンクを諦めましょう。
244ビギナー:2005/04/19(火) 17:09:59
>>243
ご返答ありがとうございます。またまたお聞きしたいのですが、main関数
を準備するというのはどうしたらよいのでしょうか
245デフォルトの名無しさん:2005/04/19(火) 17:11:35
>>244
ここはお前が質問していいスレじゃないんだ。
空気読め。
246ビギナー:2005/04/19(火) 17:17:15
>>245
空気をよんで自分で何とか解決します。
247デフォルトの名無しさん:2005/04/19(火) 19:31:12
CreateGameー陸海空オンラインー
http://www112.sakura.ne.jp/~kaientai-project/creategame.htm
2chスレ
http://game10.2ch.net/test/read.cgi/mmominor/1109935948/

プログラマ、グラフィッカー募集中!
248(・∀・):2005/04/19(火) 20:16:49
配列と構造体の違いがよくわかりません。
配列は同じ種類のデータだけのときに使い、
複数種類のデータを扱うときは構造体を使う、
という認識でよろしいのでしょうか?
249デフォルトの名無しさん:2005/04/19(火) 20:34:39
>>248
同じ種類のデータがいっぱい並んでるときは配列、
ひとつのデータの中に複数の属性があるときは構造体。
もちろん構造体の配列を作ってもいいし配列を構造体に含めてもいい。
250デフォルトの名無しさん:2005/04/19(火) 22:02:13
>>248
構造体は型の拡張。
配列はジェネリックス
251デフォルトの名無しさん:2005/04/20(水) 01:13:38
プロはvoid*の配列になんでも放り込みます
252デフォルトの名無しさん:2005/04/20(水) 23:46:37
>>251
void * nanndemo[10]; とかやってんの?バカ?
void * p; で何でもできますが
253デフォルトの名無しさん:2005/04/21(木) 20:31:16
マジレスされても
254デフォルトの名無しさん:2005/04/21(木) 20:32:59
ネタがやりたいんならマ板池。ここはマジレスする板だ。
255デフォルトの名無しさん:2005/04/24(日) 21:38:27
コンパイラでボーランドのを使おうとしているのですが、
設定が難しくてできません。課題でどうしても必要なので、
わかる方いらっしゃいましたらお願いします。
256デフォルトの名無しさん:2005/04/24(日) 21:44:52
>>255
先生に聞け。
断られたら、給料泥棒と叫びながら殴り倒せ。全裸で。
257デフォルトの名無しさん:2005/04/24(日) 21:46:51
258デフォルトの名無しさん:2005/04/24(日) 21:48:21
>>255
おまえ何をお願いしてるの?
259デフォルトの名無しさん:2005/04/25(月) 01:02:42
C言語で、MySQLに接続したい時って、
system関数使ってクエリ送るの?

いや、これじゃ、SQLから返ってくる値を受け取る事ができないや。
ドライバみたいなものがあるの?
260デフォルトの名無しさん:2005/04/25(月) 01:18:37
あげ
261デフォルトの名無しさん:2005/04/25(月) 01:24:10
>>259
本屋にでも行って来いよ
262デフォルトの名無しさん:2005/04/25(月) 01:27:13
そのまえに、Googleで 「MySQL」「入門」で検索することをお勧めする。
263デフォルトの名無しさん:2005/04/25(月) 23:22:30
Cmachineお持ちの方いらっしゃいましたらUPお願いします。
ほんと探しているんでお願いします。
264デフォルトの名無しさん:2005/04/25(月) 23:31:30
作ってやるから1月待ちな。
265デフォルトの名無しさん:2005/04/26(火) 00:02:52
>>263
マルチすなや。つーか、何に使うんだってばさ。
266デフォルトの名無しさん:2005/04/26(火) 00:07:53
>>263
2chの暗黙のルールで、マルチポストをする人はスルーする、というのがあります。気を付けなさい。
267デフォルトの名無しさん:2005/04/26(火) 19:59:35
>>265
課題でちゃんとあってるかどうか確かめたいし、
エラーがあれば修正もしたいんです。
ボーランドのとか使いかたがわからなかったので。
268デフォルトの名無しさん:2005/04/26(火) 20:16:43
cygwinでもインスコすれば?
269デフォルトの名無しさん:2005/04/26(火) 20:18:50
>>267
スタンダードから外れすぎているCMachineと較べても何の意味もないぞ。
間違いなのかCMachineの仕様なのか一々確認しなければならなくなるからな。
同じような理由でLSI-C86も激しくお勧めできない。
まぁ無難にCygwinをgccつきで入れるのが手頃じゃないか?
つーか、それができないようならこの先生きのこれないぞ。
270デフォルトの名無しさん:2005/04/26(火) 20:21:32
先生きのこ
271デフォルトの名無しさん:2005/04/26(火) 20:33:06
BCCで挫折してたら、無理だな。
あきらめれ、向いてない。
272デフォルトの名無しさん:2005/04/26(火) 23:25:21
つうか課題なら同級生(同僚?)や教官に聞けばいいのに
273デフォルトの名無しさん:2005/04/27(水) 01:48:26
>>272
友達いないってことぐらい分かってあげろ。
274デフォルトの名無しさん:2005/04/27(水) 01:50:50
友達になってください
275デフォルトの名無しさん:2005/04/27(水) 03:39:37
>>274
やきそばパン買って来い。全裸で。
276259:2005/04/27(水) 21:24:32
これがわからなかったのですが、ようやくAPIというものが何のための存在なのかわかりました。
お騒がせしました。m(_ _)m
277デフォルトの名無しさん:2005/04/29(金) 18:39:44
C言語をはじめたばかりであまりわからないのですが、
ビットシフトはなんの役に立つのでしょうか?
278デフォルトの名無しさん:2005/04/29(金) 18:52:18
>>277
例えばNビット目が1の数値を作ったり(x << N)、Xビットの数値から上位Yビットだけ取り出したりするのに使う。
279デフォルトの名無しさん:2005/04/29(金) 18:52:36
ビットマスクを作るときとか
280デフォルトの名無しさん:2005/04/29(金) 18:53:33
バイト操作とか

ビットシフト エンコード
ビットシフト エンディアン

とか
281デフォルトの名無しさん:2005/04/29(金) 18:53:53
あと、稀に2の累乗での掛け算・割り算の高速化として使われることもある。
282デフォルトの名無しさん:2005/04/29(金) 19:09:47
>>277
やきそばパン買って来い。全裸で。
283デフォルトの名無しさん:2005/04/29(金) 19:15:41
dejavu?
284デフォルトの名無しさん:2005/05/07(土) 16:31:43
CMachine2.02
http://web.archive.org/web/20030113141521/http://homepage1.nifty.com/kentake/soft/cmkt202.exe
消し忘れているだけかもしれないので、入手したい方はお早めに。
285デフォルトの名無しさん:2005/06/12(日) 14:00:29
age
286デフォルトの名無しさん:2005/06/12(日) 16:02:34
フラグがどーこって習ったんだけど
いまいち上手く動かないんだよね
誰か辞書買ってくれー
287デフォルトの名無しさん:2005/06/19(日) 21:02:02
include<stdio.h>
int main(void)
{

char buf[80];
char SS[80]


printf("string=");
gets(buf);
while (strcmp(ss,"") != 0){
puts(buf);
printf("%s\n",buf);
printf("%s\n",buf);
}

return 0;

}



上記の例題で実行したら
string=
と表示されて、=の横にC languageと入力したら、
C language
C language
C language
C language
と表示されますが、C languageを10行以上表示させる方法ってありますか?
288デフォルトの名無しさん:2005/06/19(日) 21:07:24
>>287
for文でループさせる。

include<stdio.h>
int main(void)
{
  int i;
  char buf[80];
  printf("string=");
  fgets(buf, sizeof buf, stdin);
  for (i = 0; i < 10; i++) {
    printf("%s", buf);
  }
  return 0;
}
289デフォルトの名無しさん:2005/06/19(日) 21:11:57
>>287
また藻前か。
そのコンパイルさえ通らないコードを何度も貼るな。
290デフォルトの名無しさん:2005/06/19(日) 21:50:40
大学PCに入っているCpadでならコンパイルが通りましたが…
291デフォルトの名無しさん:2005/06/19(日) 21:53:24
>>290
嘘を付くな
「同じコード」では絶対に通らない
292デフォルトの名無しさん:2005/06/19(日) 21:58:10
よくこんなわがままなスレに付き合ってられるなお前ら
そんな風に甘やかしてるから厨房が勘違いしてこんな糞スレ立てるんだよ
293デフォルトの名無しさん:2005/06/20(月) 00:06:10
せっかくだから>>287に初期化のやり方&回答を詳しく教えてやれよ
そうすりゃ全て丸く収まるだろ?
294デフォルトの名無しさん:2005/06/20(月) 00:14:47
295デフォルトの名無しさん:2005/07/15(金) 16:17:23
この速度ならぬるぽ
296デフォルトの名無しさん:2005/07/24(日) 15:15:49
surface,volume関数を使って表面積と体積を求めるプログラムを教えてくださいm(_ _)m
297デフォルトの名無しさん:2005/08/25(木) 23:07:20
2バイト文字ってどうやって入力したりするのですか。漢字を入力してそれを配列または
動的に確保したポインタに入れて処理したいんですが・・漢字とかひらがなとかってどう
扱えばいいのか・・・・
DOSでは出来ないからAPIとかで実現するのかなぁ
298デフォルトの名無しさん:2005/08/25(木) 23:34:51
>>297
特別に2バイト文字対応をしなくても入力できるよ。
299デフォルトの名無しさん:2005/09/02(金) 15:18:02
「整数xを右にnビット回転した値を返す関数」ってどう作ればいいか教えてください。
回転じゃなくてシフトさせるだけならわかるんですが。
300デフォルトの名無しさん:2005/09/02(金) 15:36:45
>>299
方法1)
 シフトする前に最下位ビットが0か1かをチェックして、1ビットシフトした後に
最上位ビットに先程チェックした値をセットする。
方法2)
 整数xを別の変数に保存し、シフトした後に
保存した変数の下位nビットを(ビット数-n)回左にシフトした物を加える。

保障はしません。
301デフォルトの名無しさん:2005/09/02(金) 16:05:39
方法3
 任意の位置のbitを取得する関数と任意の位置のbitを設定する関数を作り
該当の整数の全bitを取得後、シフトさせた形式で詰めなおす。
#遅そうねorz
302デフォルトの名無しさん:2005/09/02(金) 16:53:17
>>299
方法4
 ライブラリ関数に非標準で回転する関数がないか探す。あればそれを呼ぶだけ。
303デフォルトの名無しさん:2005/09/02(金) 17:09:35
>299
unsigned long func(unsigned long x,char n){
  int a;

  n = n & 0x1f;
  a = x >> n;
  x = x << (32-n);
  retutn (x+a);
}
304デフォルトの名無しさん:2005/09/02(金) 17:10:37
>> 303
訂正
 int a; → unsigned long a;
305デフォルトの名無しさん:2005/09/02(金) 23:11:16
文字を扱うわけじゃないのに引き数にcharを使うのは如何なものか。
私なら降格かな。
unsigned long func(unsigned long x, unsigned n)
{
n %= 32;
return x << (32 - n) | x >> n;
}
306デフォルトの名無しさん:2005/09/04(日) 01:43:15
static char g_timestr[256];

static char* gettimestr() {
struct timeval tv;
gettimeofday(&tv,NULL);
strftime(g_timestr,24,"%Y-%m-%d %H:%M:%S",localtime(&(tv.tv_sec)));
sprintf(g_timestr+19,".%03d",(int)tv.tv_usec/1000);
return g_timestr;
}
これをBorland C++ Compiler 5.5でコンパイルするとgettimeofdayが未解決となってしまうんですが解決法はありますか?
307デフォルトの名無しさん:2005/09/04(日) 02:13:19
gettimeofday()を使わない。
308デフォルトの名無しさん:2005/09/04(日) 02:25:28
確かにコメントアウトしたらコンパイル通ったけど出力時に時刻表記必要だからどうしても使いたいんですよ・・・
309デフォルトの名無しさん:2005/09/04(日) 02:46:33
秒以下の精度が不要ならtime()を使う。
310デフォルトの名無しさん:2005/09/06(火) 23:35:06
てか、bcc に gettimeofday() なんて関数ねぇだろ。
311デフォルトの名無しさん
>>299
ヒント:左にCHARBIT * sizeof(int) - nビットシフトした物とORを取る。