トップページ⇒tech
1001コメント287KB

C言語なら俺に聞け! Part 120

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/01/08(日) 22:17:59
まず問題を冷静に吟味してCの話か否かをはっきりさせてから質問しましょう。
質問する前には最低限検索を。

GUIなどの標準Cではできない事の質問,ソース丸投げ、宿題、書籍 は専門の別スレッドがあるのでそこへさようなら。

エラー(警告含む)が起きたのならばエラーメッセージを書きましょう。

C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
Cプログラマ必読 ・プログラミング言語C(通称 K&R)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/

他の過去ログはここに
http://nssearch.hp.infoseek.co.jp/clang/
前スレ
C言語なら俺に聞け! Part 119
http://pc8.2ch.net/test/read.cgi/tech/1135077848/
0002デフォルトの名無しさん2006/01/08(日) 22:18:21
3
0003デフォルトの名無しさん2006/01/08(日) 22:26:41
3get!

>>1
乙

>>2
m9(^Д^)プギャー
0004デフォルトの名無しさん2006/01/08(日) 22:29:01
環境依存OK
宿題OK
ただしスルーされます
0005デフォルトの名無しさん2006/01/08(日) 23:04:34
              |m |
       __,,, -= と´⌒)=- __
      ̄ _.ィ⌒ヽ  "T :|´^
       / }=Yゝヽ、")=- __
      ∠.イミ' ^ソ  ) :|´^
        {_ ハf彡{ l ")=- __
     _,,../ /ミ>^ノ | :|´^
    ( _fミ|-/-' )ノ ⌒)=- __
    | }ヾ' K ノ:T´|| T :|´^
    F/   {__,}::| || :'='
   _ノ {.   |||{._」-l:l
  = 彡'    ノ|{ ̄
        {_メ
0006デフォルトの名無しさん2006/01/08(日) 23:10:46
関数をカードに書いて、並べて最後に線で結ぶと凄く判りやすい。
いや〜。発明してしまいましたよ
0007デフォルトの名無しさん2006/01/08(日) 23:11:19
>>1
乙
000812006/01/08(日) 23:19:46
流れをぶった切って立てようとしたら新スレ立て何とかに引っ掛かった
から、ケータイから立てたw
0009デフォルトの名無しさん2006/01/08(日) 23:32:38
CとVisualC#.NETとはどう違うの?
教えてください。
0010デフォルトの名無しさん2006/01/08(日) 23:34:24
>>9
スレ違い(・∀・)カエレ!!
0011デフォルトの名無しさん2006/01/08(日) 23:35:38
>>9
全く別です。
“C”はプログラミング言語Cのことであり、言語の名称です。
“Visual C# .net”は、Microsoftが販売(または配布)しているソフトウェアの
名称です。
0012デフォルトの名無しさん2006/01/08(日) 23:46:58
>>10
悪かったな。
>>11
MSの言語ソフトのスレに行けということですね。
道が開けました。有難うございます。
0013デフォルトの名無しさん2006/01/09(月) 00:23:42
さてさて、宿題を追い返されて恨みを持っている厨房は
ほっといてこのスレを続けようぜ
0014デフォルトの名無しさん2006/01/09(月) 02:54:55
VC2005で警告が出るようになった、セキュアな関数ってのは
いつごろ標準として取り入れられるんだろう。
0015デフォルトの名無しさん2006/01/09(月) 07:19:56
>>14

http://www.open-std.org/jtc1/sc22/wg14/
動きはあるようです。ただ、fopen() をfopen_s()に置換しても
ダメ(引数違う)な点で本当に浸透するのか疑問なのですが…
0016デフォルトの名無しさん2006/01/09(月) 08:23:37
fopenとかでオプションに"r"と"rb"の違いはありますか?
0017デフォルトの名無しさん2006/01/09(月) 08:40:46
>>16
ある。

前者はテキストモードで後者はバイナリモード。
典型的にはWin系ではテキストモードのとき、入力時に改行コードが\r\nから\nへ変換される。
0018デフォルトの名無しさん2006/01/09(月) 14:51:03
質問です。
int型配列の要素の個数を知りたいのですが、どうすればいいでしょうか。
strlenも試したのですが、うまくいきません。

warning C4133: '関数' : 'int [11]' と 'const char *' の間で型に互換性がありません。

と出てしまいます。
分かる方、ご教授お願いします。
0019デフォルトの名無しさん2006/01/09(月) 15:14:39
sizeof(a)/sizeof(a[0])
0020デフォルトの名無しさん2006/01/09(月) 15:14:53
>>18
sizeof(array)/sizeof(int)
0021デフォルトの名無しさん2006/01/09(月) 15:35:04
真に受けて「うまくいかないじゃないですか!!」って怒りだすぞ
0022デフォルトの名無しさん2006/01/09(月) 15:36:01
sizeof は関数じゃなくてえんz(ry
0023デフォルトの名無しさん2006/01/09(月) 15:41:20
えんずいぎr
0024デフォルトの名無しさん2006/01/09(月) 16:23:09
マクロならカッコつきは問題ないといいたいところだが、
演算子の優先順位の問題が出るようなものを入れること自体
このマクロでは問題になるから(大抵配列でなくポインタになる)、
むしろカッコを付けない方が安全。
0025デフォルトの名無しさん2006/01/09(月) 16:25:36
>>24
(´д)ヒソ(´д`)ヒソ(д`)
0026デフォルトの名無しさん2006/01/09(月) 16:27:11
>>25
m9(^Д^)プギャー!!
0027デフォルトの名無しさん2006/01/09(月) 17:02:53
>>26
ぬるぽ
0028デフォルトの名無しさん2006/01/09(月) 17:35:14
break;
0029デフォルトの名無しさん2006/01/09(月) 17:40:05
>>27
ガッ!
0030デフォルトの名無しさん2006/01/09(月) 18:08:40
コードを書く奴がどう間違おうと自由なんだよ
0031デフォルトの名無しさん2006/01/09(月) 18:49:17
(~~~ ゚ ∀~)~~~ ゚ メダマ ボーン
0032デフォルトの名無しさん2006/01/09(月) 19:13:02
なんかこのスレ、ワイワイ楽しいなw
0033デフォルトの名無しさん2006/01/09(月) 19:30:09
>>32
(´д)ヒソ(´д`)ヒソ(д`)
0034デフォルトの名無しさん2006/01/09(月) 19:53:45
>>33
m9(^Д^)プギャー!!
0035デフォルトの名無しさん2006/01/09(月) 20:23:31
>>34
ぬるぽ
0036デフォルトの名無しさん2006/01/09(月) 20:26:01
break;
0037デフォルトの名無しさん2006/01/09(月) 22:04:13
int main(void)と
int main()
の違いを教えてください。

() != (void)と聞いたこともあるような…
0038デフォルトの名無しさん2006/01/09(月) 22:46:05
>>37
前者は引数がないことを表し、後者は引数が不定(引数に関する情報がない)ということを表す。
ただこれは関数の宣言のときだけで、
関数の定義の時にはどうやら両者ともに引数がないことを表すらしく、違いはないようだ。
0039デフォルトの名無しさん2006/01/09(月) 22:59:52
意味的にはint main(void)とint main()は同じ。引数が無いと言うこと。

ANSI-C以前のK&Rではint main()でよかった。
ANSI-Cでは引数が無いことを「明示的」に示すためにint main(void)となってる。

ANSI-Cの方針の一つとして、文法とコンパイル時でのチェック機能を強化して、
ケアレスミスを未然に防ごうという意図がある。その一環の一つ。つまり
無いときは省略でなく無い(void)とプログラマに指定るようにした。
0040デフォルトの名無しさん2006/01/09(月) 23:02:10
>>35
ガッ!
0041デフォルトの名無しさん2006/01/09(月) 23:03:06
ちなみにC++ではいつでもint main()とint main(void)は後者の意味で統一されている。
(void)はキモいし、()が引数を取らないという意味でないというのは直感的でないなど言う理由からだったと思う。
0042デフォルトの名無しさん2006/01/09(月) 23:44:58
(void)が制定されたのは古い前方宣言との互換性を保つため。
C++では前方参照をサポートする必要が無いからvoidが除かれても問題が無い。
0043デフォルトの名無しさん2006/01/10(火) 05:19:34
C言語で書かれたコンピュータ同士が対戦するオセロのプログラム例はないですか?
0044デフォルトの名無しさん2006/01/10(火) 05:20:38
リバーシなら。
0045432006/01/10(火) 05:25:01
リバーシのプログラム例でもいいです。
0046デフォルトの名無しさん2006/01/10(火) 05:27:19
>>45
せっかく色々情報出してやろうかと思ったのに、マルチなので教えません。
0047デフォルトの名無しさん2006/01/10(火) 06:56:08
>>46
何処と?
0048デフォルトの名無しさん2006/01/10(火) 12:44:32
>>43
スレ違い
0049デフォルトの名無しさん2006/01/10(火) 22:55:33
IOS
0050デフォルトの名無しさん2006/01/10(火) 22:56:23
http://www.google.co.jp/search?hl=ja&q=IOS+%E3%82%AA%E3%82%BB%E3%83%AD&lr=lang_ja
0051sinnki2006/01/11(水) 01:51:59
鮮鋭化のプログラムを教えてください。。
0052デフォルトの名無しさん2006/01/11(水) 03:52:23
エフェクティブC++によると、main(void)のvoidは冗長だから、C++ではmain()でよいと書いてあった。
0053デフォルトの名無しさん2006/01/11(水) 06:05:29
>>52
スレ違い。

>>51
マルチ乙。
0054デフォルトの名無しさん2006/01/11(水) 11:14:53
CでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
Cの基礎からすべてを叩き込んでくれませんか??
お願いします。
0055デフォルトの名無しさん2006/01/11(水) 11:16:24
はいはい、ゆとりゆとり。
0056デフォルトの名無しさん2006/01/11(水) 11:16:55
>>54
何につまづいているのかわからないのでアドバイスできない。
0057デフォルトの名無しさん2006/01/11(水) 11:17:55
そんな事より、オマイラ昨日の晩飯なに?
0058デフォルトの名無しさん2006/01/11(水) 11:18:36
>>54
三回回って 「ぬるぽ」 と叫んでみましょう。
0059デフォルトの名無しさん2006/01/11(水) 11:20:05
>>57
食べてないorz
0060デフォルトの名無しさん2006/01/11(水) 12:22:46
おにぎり
0061デフォルトの名無しさん2006/01/11(水) 12:23:55
おむすび
0062デフォルトの名無しさん2006/01/11(水) 12:40:57
>>60-61
また論争を始めようというのか
0063デフォルトの名無しさん2006/01/11(水) 12:43:07
にぎりめし
0064デフォルトの名無しさん2006/01/11(水) 22:03:53
1月2日は
らいすぼうる
0065デフォルトの名無しさん2006/01/11(水) 23:00:02
CのRPGならNetHackがあるよ
さんこうにすれば
0066デフォルトの名無しさん2006/01/11(水) 23:08:36
>>54
オープニングが作れる程度の知識があるなら WIZ1 もどきでも作ってみたら?
俺思うにあなたに「難しい」のはCよりも世界観=システム設計だ
0067デフォルトの名無しさん2006/01/11(水) 23:11:12
>>54
プログラミング言語 RPG を作りたいのか
ゲームの RPG を作りたいのか
はっきりしる。
0068デフォルトの名無しさん2006/01/11(水) 23:15:26
この問題を誰か代わりに解いてもらえませんか?
ヒントでもいいです。お願いしますm(__)m

まず、整数を任意に10個入力させa[0]からa[9]に格納する。
次にこれを小さ順に並べ替え、画面に表示させよ。
選択ソート方式を用いよ。

(1) a[0]とa[1]を比べ、a[0]のほうが大きかったらa[0]とa[1]を入れ替える。
   次に新しいa[0]とa[2]で行い、その次は新a[0]とa[3]で行い、以下a[9]まで行う。
(2) a[1]とa[2]を比べ、(1)と同じようにa[9]まで行う。
(3) 以下、a[2]、a[3]、とa[8]まで行う。



0069デフォルトの名無しさん2006/01/11(水) 23:18:33
                \ │ /
                 / ̄\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
               ─( ゚ ∀ ゚ )< さいたま! さいたま!
                 \_/   \___________
                / │ \
                    ∩ ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< さいたま!  さいたま!
さいたま〜〜〜!   >( ゚∀゚ )/ |    / \__________
________/ |    〈 |   |
              / /\_」 / /\」
               ̄     / /
                \ │ /
                 / ̄\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
               ─( ゚ ∀ ゚ )< さいたま! さいたま!
                 \_/   \___________
                / │ \
                    ∩ ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< さいたま!  さいたま!
さいたま〜〜〜!   >( ゚∀゚ )/ |    / \__________
________/ |    〈 |   |
              / /\_」 / /\」
               ̄     / /
0070デフォルトの名無しさん2006/01/12(木) 05:45:12
うわ、懐かし。
0071デフォルトの名無しさん2006/01/12(木) 09:30:44
2GB(2^31B)以上のファイルサイズの取得方法とディレクトリ内のファイルの数と名前を求める方法を教えてください。
開発環境はVISUAL C++ .NET 2003です。
0072デフォルトの名無しさん2006/01/12(木) 09:33:20
丸投げ氏ね
0073デフォルトの名無しさん2006/01/12(木) 10:02:28
>>71
スレ違い
0074デフォルトの名無しさん2006/01/12(木) 12:20:00
>>71
GetFileAttributesEx()

あと氏ね。
0075デフォルトの名無しさん2006/01/12(木) 12:21:21
>>71
忘れてた。
FindFirstFile()
FindNextFile()

あと氏ね。
0076デフォルトの名無しさん2006/01/12(木) 12:23:08
>>74>>75
言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。
0077デフォルトの名無しさん2006/01/12(木) 12:31:27
>>76
>>71にはあんな言葉ももったいない
0078デフォルトの名無しさん2006/01/12(木) 12:37:19
このスレ的には、「出来ない」or>>73が正しい回答だな。
0079デフォルトの名無しさん2006/01/12(木) 13:39:08
下記のようなプログラムを書いて、dataの中の値を小さい順に並べてセルを生成したいのですが、
addCell関数の部分がわかりません。
すいませんが、どなたか教えて頂けないでしょうか?期日が明日までなんですよ。
おねがいします。

ttp://8701.teacup.com/a240/bbs
0080デフォルトの名無しさん2006/01/12(木) 14:00:10
>>79
スレ違い。
宿題、丸投げは宿題スレへ。
そうでないなら初心者スレにでも。
0081デフォルトの名無しさん2006/01/12(木) 14:55:10
>>79
> 期日が明日までなんですよ。

そんなこと知ったこっちゃない。
それがルールを破っていい理由にはならないよ。
回線切って首吊ってろ。
0082デフォルトの名無しさん2006/01/12(木) 16:18:25
画面の消去方は?
0083デフォルトの名無しさん2006/01/12(木) 16:24:59
>>82
環境依存。よって、環境依存OKスレなどへどうぞ。
0084デフォルトの名無しさん2006/01/12(木) 19:24:10
キーボードのキーの割り当てを変えたいのですが・・・どうプログラミングすればいいでしょうか?
0085デフォルトの名無しさん2006/01/12(木) 19:25:46
そのようにプログラムすればよい。

はい、次。
0086デフォルトの名無しさん2006/01/12(木) 19:31:11
環境依存。よって、環境依存OKスレなどへどうぞ。
0087デフォルトの名無しさん2006/01/12(木) 20:19:13
このスレの存在意義を教えてください
0088デフォルトの名無しさん2006/01/12(木) 20:31:56
何も出来ないな! C言語は!
0089デフォルトの名無しさん2006/01/12(木) 21:13:50
>>87
標準Cの話をするスレだという事が
>>1 を見ても解らないようだとヤバイ。
0090デフォルトの名無しさん2006/01/12(木) 21:14:46
>>84
あれ、実は一つ一つ取り外せるから。
並び替えればいいだけだよ。
0091デフォルトの名無しさん2006/01/12(木) 22:07:35
キートップを物理的に入れ替えるのかw
0092デフォルトの名無しさん2006/01/12(木) 22:13:19
ttp://www.diatec.co.jp/shop/det.php?prod_c=48
これで解決だ。
0093デフォルトの名無しさん2006/01/12(木) 22:14:48
>>90
ふにゃふにゃキーボードを使ってるのですが・・・
0094デフォルトの名無しさん2006/01/12(木) 22:40:44
すげー、インク代減らして25k円w
0095デフォルトの名無しさん2006/01/12(木) 22:41:37
>>93
配線替えれ
0096デフォルトの名無しさん2006/01/12(木) 22:51:03
こっちのがいいんじゃない?
http://www.artlebedev.com/portfolio/optimus/
0097デフォルトの名無しさん2006/01/12(木) 23:45:32
>>84
http://www.remus.dti.ne.jp/~kurotora/
0098デフォルトの名無しさん2006/01/13(金) 00:09:13
#include "stdafx.h"
#include <stdio.h>
#define KEISEN
"==========================================================\n"

int main(int argc, char* argv[])
;{
FILE *fp;
int a[5],f=0,i;
char name[30];
fp=fopen("c:seiseki.dat","r");
printf("***********************成績一覧表************************\n");
printf(KEISEN);
printf("氏名 生物 化学 物理 数学 英語 平均 最高点\n");
while((fscanf(fp,"%s%d%d%d%d%d",name,&a[0],&a[1],&a[2],&a[3],&a[4]))!=EOF){
f=a[0];
0099デフォルトの名無しさん2006/01/13(金) 00:10:30
for(i=1;i<5;i++){
if(a[i]>f){
f=a[i];
}
}
printf("%-20s%5d%5d%5d%5d%5d%5d%5d\n",name,a[0],a[1],a[2],a[3],a[4],(a[0]+a[1]+a[2]+a[3]+a[4])/5,f);

}
fclose(fp);
return(0);
}

このプログラム
C:\Program Files\Microsoft Visual Studio\MyProjects\11−1\11−1.cpp(7) : error C2143: 構文エラー : ';' が 'string' の前に必要です。
C:\Program Files\Microsoft Visual Studio\MyProjects\11−1\11−1.cpp(10) : error C2447: グローバルスコープで中カッコ ({) が見つかりましたが、対応する関数ヘッダーがありません。

このようなエラーが起きてしまうのですが、どうしても解決出来ません。
お願いします。
0100デフォルトの名無しさん2006/01/13(金) 00:16:19
>>99
入門書でも読んでください。
0101デフォルトの名無しさん2006/01/13(金) 00:17:36
int main(int argc, char* argv[])
;{
↑
このセミコロンは?
■ このスレッドは過去ログ倉庫に格納されています