C言語なら、俺に聞け! <18>
■ このスレッドは過去ログ倉庫に格納されています
0001きょうはいいテンキーです。日下部陽一
NGNGいろいろな言語を極めたが、一番手になじむのはCだった。
Cのことならぜんてわかるから、疑問な点があったら漏れに聞け。
だが、いちいちFAQに載った質問に応えるほど暇じゃない。
課題丸投げなら別スレにいけ。
・comp.lang.c Frequently Asked Questions
http://www.eskimo.com/~scs/C-faq/top.html
・C FAQ 日本語訳
http://www.catnet.ne.jp/kouno/c_faq/c_faq.html
Cプログラマならこれを買っとけ。
・プログラミング言語C(K&Rと呼べば通だ)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/yfcbookshelf-22/250-3950205-1475419
K&Rで挫折するような救いがたいやつはこれでも読め
・作ってわかるCプログラミング(アヒル本と呼べば通だ)
http://dennou.gihyo.co.jp/books/void_c/
http://www.amazon.co.jp/exec/obidos/ASIN/477411328X/249-4698746-2014711
推薦図書/必読書のためのスレッド PART3
http://pc.2ch.net/test/read.cgi/tech/1016722820/
・前スレ C言語なら、俺に聞け! <17>
http://pc.2ch.net/test/read.cgi/tech/1019372139/l50
0554デフォルトの名無しさん
NGNG別に○○少女でなくても丁寧に答えてくれるだろ。
酷い態度でなければ。
0555デフォルトの名無しさん
NGNG0556デフォルトの名無しさん
NGNG今日はNULLあたりでマジになってたのが多かったから
それなりの答えが返って来ただけで
普段だったら、>>527の質問で
「女の子の仕組みを教えて下さい」
って切り返して終わるのがオチと思われ
0557デフォルトの名無しさん
NGNGこのスレは違う。
0558デフォルトの名無しさん
NGNGきっとモーホーなお兄さんが全力で教えてくれるぞ。関係ないことまで。
801板のお姉さんたちでもいい。
0559デフォルトの名無しさん
NGNG呼んだか?
0560553
NGNG0561デフォルトの名無しさん
NGNG0562デフォルトの名無しさん
NGNG0563デフォルトの名無しさん
NGNG0564デフォルトの名無しさん
NGNG0565デフォルトの名無しさん
NGNGSendMessageでテキストボックスなどコントロールを
表示・非表示の切り替え や使用可能・不可能の切り替えはどう書けばいいでしょうか?
0567デフォルトの名無しさん
NGNG0568デフォルトの名無しさん
NGNG実装依存
0569とおりががり〜
NGNG568さんのいうとおり実装依存じゃないでしたっけ。
0570デフォルトの名無しさん
NGNG過去ログ読んでくれ。もうたくさんだ。
0571デフォルトの名無しさん
NGNG0572デフォルトの名無しさん
NGNG不毛な揚げ足取りはやめましょうとかで良いんじゃないの?w
0573デフォルトの名無しさん
NGNG2ch向けのFAQ書くかだなあ。
十数年前の暇な学生の頃だったらやってたかも。
0574○○なお兄さん
NGNG0575デフォルトの名無しさん
NGNG言語定義の説明に本気で反論してそうなやつ、たまにいるからね。
0576デフォルトの名無しさん
NGNGプロらしいのに読んでないやつが結構いるのか分からん。
0577
NGNG文字の色を変えたり下線を引いたりするのに
MS-DOSのエスケープ・シーケンスを使うってあったんですけど
コマンドプロンプトではどうすればいいんでしょうか?
0578デフォルトの名無しさん
NGNG・定数の "0" は、文脈によってヌルポインタ、または整数の 0 として解釈される。ただし、可変長引数、またはプロトタイプをもたない関数の引数に現れた場合は整数の 0 として解釈される。
また、整数型とポインター型とで多重定義している関数の引数では、解釈は実装依存となる(C++ 限定)。
・ヌルポインタのビットパターンは実装依存である。
・条件式にヌルポインターが現れた場合、偽となる。
・ヌルポインタとヌルポインタとは等しい。
・ヌルポインタとその他のヌルポインタとは、常に等しくない。
・ポインタ型によりヌルポインタのビットパターンが異なる場合があるが、コンパイラは(騙されない限り)正しい型を知っているので、比較は正しく行われる。
・NULL は 定数 "0" がヌルポインタとして解釈される場合のみ、定数 "0" の代わりに使用できる。他の文脈では、結果が実装依存となる。(NULL を整数 0 の代わりに使用してはいけない)
・NULL の定義方法は処理系により決定される。(#undef NULL は合法)
0579デフォルトの名無しさん
NGNGすばらしい!
でも、
>・ヌルポインタとその他のヌルポインタとは、常に等しくない。
・ヌルポインタとその他のポインタとは、常に等しくない。
の間違いかな。
0580デフォルトの名無しさん
NGNGこれがわからない。
解説キボンヌ
0581デフォルトの名無しさん
NGNGと定義し、
str[3]='\0';
とした場合、配列自体は書き換えたところ以外は変わりませんが、文字列は3文字まで切りつめられたとみてよいですよね?
というのも、「文字列を切りつめるには適切な場所に'\0'を挿入すればよい。」という考えが正しいのかどうかと思いまして。
0582デフォルトの名無しさん
NGNG正しい。
0583デフォルトの名無しさん
NGNG正しいんですね。ありがとうございました。
間違っていなくてよかった。
0584修正
NGNG・定数の "0" は、文脈によってヌルポインタ、または整数の 0 として解釈される。ただし、可変長引数、またはプロトタイプをもたない関数の引数に現れた場合は整数の 0 として解釈される。
また、整数型とポインター型とで多重定義している関数の引数では、解釈は実装依存となる(C++ 限定)。
・ヌルポインタのビットパターンは実装依存である。
・条件式にヌルポインターが現れた場合、偽となる。
・ヌルポインタとヌルポインタとは等しい。
・ヌルポインタとその他のポインタとは、常に等しくない。
・ポインタ型によりヌルポインタのビットパターンが異なる場合があるが、コンパイラは(騙されない限り)正しい型を知っているので、比較は正しく行われる。
・NULL は 定数 "0" がヌルポインタとして解釈される場合のみ、定数 "0" の代わりに使用できる。他の文脈では、結果が実装依存となる。(NULL を整数 0 の代わりに使用してはいけない)
・NULL の定義方法は処理系により決定される。(#undef NULL は合法)
0585デフォルトの名無しさん
NGNGecho ^[[0\;1m
てな感じでechoしよう。^[ は実際は'\x1b'ね。
0586デフォルトの名無しさん
NGNG、、、
0587577
NGNGレスありがとうございます
でも できなかったです
bccがだめなんでしょうか?
0588デフォルトの名無しさん
NGNGWindowsNT,2000,XPを使っているとみた。
0589577
NGNGXPだと色変えれないんでしょうか?
0590親切な人
NGNG追随を許さない、RX-2000�V !!!
注目のオークションにも適用されてるね↓
http://search.auctions.yahoo.co.jp/search/auc?p=RX-200
0591デフォルトの名無しさん
NGNG少なくともエスケープシークウェンスでは無理。
何かライブラリがあると聞いたが。
0592デフォルトの名無しさん
NGNGDOS/Vで使えたっけ?
ANSIsysか何かが必要だった気が。
0593デフォルトの名無しさん
NGNGコマンドプロンプトはDOSではないがね。
0594デフォルトの名無しさん
NGNGLSI-Cとか使いなさい
0595デフォルトの名無しさん
NGNGAny two null pointers shall compare equal.
というISOの規格そのままだと思うが何か?
(もっと細かく言うなら、「どの型のヌルポインタ
も互いに等しい」と書くべきかも知れんが。)
0596デフォルトの名無しさん
NGNG570 名前:デフォルトの名無しさん 投稿日:2002/05/04(土) 15:40
>>569
過去ログ読んでくれ。もうたくさんだ。
571 名前:デフォルトの名無しさん 投稿日:2002/05/04(土) 15:57
次のスレには、ぜひ、NULL、0==var、main()の戻り値については議論しないように書いて欲しい。
572 名前:デフォルトの名無しさん 投稿日:2002/05/04(土) 16:04
>>571
不毛な揚げ足取りはやめましょうとかで良いんじゃないの?w
573 名前:デフォルトの名無しさん 投稿日:2002/05/04(土) 16:10
それぞれの議論へのポインタを置くか、
2ch向けのFAQ書くかだなあ。
十数年前の暇な学生の頃だったらやってたかも。
0597デフォルトの名無しさん
NGNG0598デフォルトの名無しさん
NGNG0599デフォルトの名無しさん
NGNG>584 で終わっているんじゃないの。
0600デフォルトの名無しさん
NGNGというのを作ってみるとか。
で、このスレは廃墟に…
0601デフォルトの名無しさん
NGNGで、このスレはあっちのくだ質のように廃墟に・・・
0602デフォルトの名無しさん
NGNGとか…
0603デフォルトの名無しさん
NGNG0604デフォルトの名無しさん
NGNGしかし、それはcじゃなくてWin32APIスレの方が適切だ
0605デフォルトの名無しさん
NGNG0606603
NGNGとやって表示しようとしたら表示できず、
sprintf(mes,"%s:",a[1].Name);
とやったらOSが落ちました。
なぜでしょう?
0607デフォルトの名無しさん
NGNGmesが不適切の可能性。
a[1].Nameが不適切の可能性。
なめてるのか?
0608デフォルトの名無しさん
NGNGコンセント抜けたんじゃない?
きにするな
がんがれ
0609603
NGNGcharにかえてみたところうまくいきました。
0610デフォルトの名無しさん
NGNG0611デフォルトの名無しさん
NGNG領域破壊ですかね?
0612603
NGNGsprintf(mes,"%sのなまえはなんでしょうかね?",a[1].Name);
としたところOSが落ちました。
char mes[256];
aのメンバNameはchar Name[256];
です
0613デフォルトの名無しさん
NGNG0614デフォルトの名無しさん
NGNGOSは何?
0615デフォルトの名無しさん
NGNG0616デフォルトの名無しさん
NGNG2. a[1].Name に228文字以上入ってる。
のどっちかだろう。
0617デフォルトの名無しさん
NGNG本当にその程度で落ちてるなら、確かにOSかえたほうがいい。
0618デフォルトの名無しさん
NGNGきちんと初期化しないとね。
(a[1].Name="aaaa"とかやっていたらわらえるんだが)
0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNG0621デフォルトの名無しさん
NGNGそれだと確実にNTが落ちるんじゃない?
0622デフォルトの名無しさん
NGNG2chにスレが立っていたのでやってみたら本当に落ちてちと焦った。
0623603
NGNG>>614
Win98です
>>617
画面が真っ白のままなんで,強制終了しました
>>618
多分大丈夫だと思いますが,確認してみます。
char aNameTable[][256]={
"ナナシ","ナナシ","ナナシ","ナナシ","ナナシ"
};
strcpy(a[i].Name,aNameTable[i]);
としています
なんかここがだめそう?
0624デフォルトの名無しさん
NGNG256バイトもいるのかと小一時間・・・
0625デフォルトの名無しさん
NGNGiの値は?
>>624
必要なくても256バイトは取る。これ常識・・・・・・じゃないな。
0626603
NGNGfor文で回しています
for(i=0;i<5;i++){
strcpy(a[i].Name,aNameTable[i]);
}
です
0627デフォルトの名無しさん
NGNGで、配列aの要素は少なくとも5は取っているんだな?
0628603
NGNGsprintf(mes,"%sのなまえはなんでしょうかね?",a[1].Name);
の部分をコメントにして実行したら大丈夫なんですが
0629デフォルトの名無しさん
NGNGでかいなら、再現できる最小を
0630デフォルトの名無しさん
NGNGコンパイラがおかしいんじゃネーノ?
0631デフォルトの名無しさん
NGNG新事実が出てきそうな予感。
0632デフォルトの名無しさん
NGNGおお、地震だ!
0633603
NGNGここに問題があると思うんですが,
sprintf(mes,"%sのなまえはなんでしょうかね?",a[1].Name);
FontData=SetMyFont(255,255,255,"MS ゴシック",18,0);
SetRect(&Src,20,380,470,630);
DrawText(FontData.hdc,mes,-1,&Src,DT_LEFT | DT_NOCLIP | DT_WORDBREAK);
DeleteFont(FontData);
で、SetMyFontでフォントを設定,FontDataで必要な情報を得ています。
0634デフォルトの名無しさん
NGNGsprintfより下の関数がわからん。
他の人頼む。
0635デフォルトの名無しさん
NGNG>>629
0636603
NGNGすんません。OS落ちてました。
なんか実行したら,画面が480*640の状態になって,デスクトップが表示されたままだったんで,
ALT+CTR+DELで再起動していました
0637デフォルトの名無しさん
NGNG縦長やねー
0638デフォルトの名無しさん
NGNGなのですが、いまいち簡潔にまとめて説明することができません。
どこか詳しく説明しているとことかないですか?ここで教えていただけ
るとよりうれしいのですが。
0639デフォルトの名無しさん
NGNGコマンド起動させるだけのプログラム。
0640デフォルトの名無しさん
NGNGかいがら。
以上。
0641デフォルトの名無しさん
NGNGここで問題になっているのは、sprintfでのフリーズだろ?
だったら、それ以前の箇所でマズイ事が起こっているから、sprintfで失敗が起こる。
sprintf以降をさらされてもしょうがない。
原因を特定できない人間が勝手に問題の発生箇所を決めつけるな。
コンパイル&実行出来る最小限のソースを張り直せ
0642デフォルトの名無しさん
NGNGhttp://www.showa-shell.co.jp/
0643デフォルトの名無しさん
NGNGソースあげるかそのまま友達に配るかどっちかにしてくれ。
0644デフォルトの名無しさん
NGNGsprintfよりも前とは限らないぞ。
sprintfが原因で後でフリーズしているのかもしれない。
0645デフォルトの名無しさん
NGNGmyshellとcshllとの違いって何?
0646デフォルトの名無しさん
NGNG誤爆だよね・・・・?
0647デフォルトの名無しさん
NGNGスマソ誤爆デス
>>644
まぁ、確かにそうだね。
sprintfを中心に話題が進行してたんで、
そういうもんだと勝手に思いこんでました
0648デフォルトの名無しさん
NGNGお前の怪しげなプログラムかUNIXで少なからずシェアを持っているシェルかの違い。
0649デフォルトの名無しさん
NGNGためしにさ、
sprintf()の部分を、
strcpy(mes,"あうあうあうあうあうあうあうあうあうあうあうあうあうあ");
とかにしてみると、どうなる?
0650デフォルトの名無しさん
NGNGこちらへどんぞ。
UNIX超初心者専用スレッド Part.2
http://pc.2ch.net/test/read.cgi/unix/1017325687/
0651デフォルトの名無しさん
NGNGシェアって何?
0652デフォルトの名無しさん
NGNGhttp://dictionary.goo.ne.jp/cgi-bin/ej-more_print.cgi?MT=share&ID=EJ-277600.txt&sw=0
0653デフォルトの名無しさん
NGNG共有する。
■ このスレッドは過去ログ倉庫に格納されています