12/12/10 22:33:19.27
ちんこ
51:デフォルトの名無しさん
12/12/10 22:39:16.47
tinko
52:デフォルトの名無しさん
12/12/10 22:42:05.04
ちんぽいんぽ
53:デフォルトの名無しさん
12/12/10 22:44:25.71
いんきんたむし
54:デフォルトの名無しさん
12/12/10 22:54:39.71
>>43
まぁ、そんな感じでいい
55:デフォルトの名無しさん
12/12/10 22:56:04.81
ちんこくさい
56:デフォルトの名無しさん
12/12/10 22:58:11.42
皮でちんちんを包む
57:デフォルトの名無しさん
12/12/10 23:02:19.27
ちんちんがぁ?
58:デフォルトの名無しさん
12/12/10 23:06:54.55
ちんちんのぉ?
59:デフォルトの名無しさん
12/12/10 23:10:38.14
金玉がソファーにはりついて気持ち良い
60:デフォルトの名無しさん
12/12/10 23:12:48.13
ちんちん
61:デフォルトの名無しさん
12/12/10 23:16:28.23
>>54
ありがとうございます…
62:デフォルトの名無しさん
12/12/10 23:16:42.99
床オナはちんちんの事をこれっぽっちも考えてない
63:デフォルトの名無しさん
12/12/10 23:29:26.61
ちんぽこりん
64:デフォルトの名無しさん
12/12/10 23:31:44.13
ぽこちん祭り
65:デフォルトの名無しさん
12/12/10 23:36:46.19
mallocしたメモリは関数の呼び出し元・呼び出し先のどちらでfreeするのがいいのでしょうか?
普通に考えれば呼び出し先で、freeすることはほとんど無いはずなのですが
GUIのWindowみたいにいつ終わるかわからないものは、呼び出し先でfreeするのがベストかと思います。
66:デフォルトの名無しさん
12/12/10 23:54:06.07
>>65
巣からでてくんな
main以外★mallocの後にfree不要と言うバカいるの?
スレリンク(tech板)
67:デフォルトの名無しさん
12/12/11 00:02:45.66
山ほどあるcで書かれたコード嫁
68:デフォルトの名無しさん
12/12/11 00:26:52.67
後片付けは自分でしなさいとこだわる人もいるだろうけど、
手紙なら読んだ人が処分するよね。
相手が読むのだけを待って、読み終えたら自分で片付けなくては
いけないなんて効率悪いと思う。
ただ、誰が片付けるかは明確にしておかないといけないけど。
69: ◆QZaw55cn4c
12/12/11 00:59:33.94
>>37
>グローバルの時代に
聞くからに、とっても悲惨な時代だと、どーしても思うのですが
70:デフォルトの名無しさん
12/12/11 22:20:56.06
てs
71:デフォルトの名無しさん
12/12/11 22:23:22.11
てすと
72:デフォルトの名無しさん
12/12/11 23:28:07.76
#include <stdio.h>
int uruu(int year);
int main(void)
{
int a,b;
int lastdays=0;
int i;
scanf("%d %d ",a,b);
for(i=a;i<b;i++){
if(uruu(i)==1){
lastdays+=366;
}
else{
lastdays+=365;
}
printf("%d",lastdays);
}
int uruu(int year){
if(year%400==0){
return 1;
}
else if(year%100==0){
return 0;
}
else if(year%4==0){
return 1;
}
else{
return 0;
}
}
73:デフォルトの名無しさん
12/12/11 23:28:43.89
↑ごめんインデントが汚いけれど
何がいけないの?
74:デフォルトの名無しさん
12/12/11 23:30:19.25
>>73
何がやりたいのか書かれてないのがいけない
75:デフォルトの名無しさん
12/12/11 23:32:44.96
ごめん
年度二つ入力して閏年考慮した上で、その間の日数を求めたい。
これはそのひな形。
とりあえず、動かないんだ。
76:デフォルトの名無しさん
12/12/11 23:33:55.62
scanfに整数わたしてる
77:デフォルトの名無しさん
12/12/11 23:34:10.21
>>75
scanf &
78:デフォルトの名無しさん
12/12/11 23:35:37.89
ごめん、それも忘れたたけど
まだ動かない
79:デフォルトの名無しさん
12/12/11 23:36:37.18
どうなることを期待して、何が出るかくらい書け
80:デフォルトの名無しさん
12/12/11 23:38:30.82
インデントつけないのが悪いな。{ } が合ってない。
81:デフォルトの名無しさん
12/12/11 23:38:38.98
例えば
2000、2007といれると
2000=閏年=366
2001=平年=366+365
みたいになることを期待してるんだけど
82:デフォルトの名無しさん
12/12/11 23:41:26.01
その期待に対して、何が出るか聞いてんだよ
83:デフォルトの名無しさん
12/12/11 23:48:17.40
for(i=a; i<=b;i++)
84:デフォルトの名無しさん
12/12/11 23:50:47.46
if(year%400==0){
↓
if((year%400) == 0)
%と=どっちが優先か忘れたけど
85:デフォルトの名無しさん
12/12/12 00:02:49.12
その前に、main()の } が足りないみたいだけど、コンパイル通るのか
86:デフォルトの名無しさん
12/12/12 00:06:34.15
ごめん、出来た。
けど、結局何がいけなかったのか分からない。
87:デフォルトの名無しさん
12/12/12 00:22:04.32
さっきのと比較しろや
88:デフォルトの名無しさん
12/12/12 08:38:08.83
int ndays(int y,int m)
{
int days;
int month;
int data[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
days=month[m];
if(uruu(y)==1 && m==2)
{
days+=1;
}
return days;
}
この関数なのですが、何か問題がありますか?
プロトタイプ宣言もしてあるのですが、動作しません。
89:デフォルトの名無しさん
12/12/12 08:42:14.92
>>88
>days=month[m];
わからんけど、ここな気がする
90:デフォルトの名無しさん
12/12/12 08:43:17.40
days=data[m];
こうじゃね?
91:デフォルトの名無しさん
12/12/12 09:00:03.38
「動作しない」と「コンパイルできない」くらい区別してくれ
92:デフォルトの名無しさん
12/12/12 11:36:21.71
time_tに変換してdifftime()すればいいものを。
課題とか実験とかなら判るけど、馬鹿に限って手を抜くことをしないからなぁ。
93:デフォルトの名無しさん
12/12/12 11:47:03.49
入門編でしか暴れられない奴が言ってもなあ。
94:デフォルトの名無しさん
12/12/12 12:26:49.69
difftimeを知ってるならもう中級者
95:デフォルトの名無しさん
12/12/12 14:01:42.04
数字の末尾が2,4,6,8であるかどうかの確認ってどうするんでしたっけ?
96:デフォルトの名無しさん
12/12/12 14:11:13.33
わからない
97:デフォルトの名無しさん
12/12/12 14:32:35.90
お年玉葉書か。
98:デフォルトの名無しさん
12/12/12 14:34:24.52
>>95
bool isLastDigit2468(int value)
{
char foo[20];
char digit = foo[sprintf(foo, "%d", value) - 1];
return digit == '2' || digit == '4' || digit == '6' || digit == '8';
}
99:デフォルトの名無しさん
12/12/12 14:38:57.74
>>95
i%10&&!(i%2)
100:デフォルトの名無しさん
12/12/12 14:45:35.40
今日からC言語を覚えます!
みんなよろしく\(^o^)/
101:デフォルトの名無しさん
12/12/12 15:26:00.55
やだ
102:デフォルトの名無しさん
12/12/12 15:28:25.73
>>101
冷てぇなおいw
103:デフォルトの名無しさん
12/12/12 15:46:27.85
>>100
Cを憶えると犯人予備軍にされる恐れがあるから注意な
警察「犯人は「Cシャープ(音楽記号)」というプログラミング言語を利用してウイルスを作成」
スレリンク(news板)
104:デフォルトの名無しさん
12/12/12 16:02:56.20
URLリンク(ideone.com)
ctrl + d押しても^Dとしか表示されなくてbreak出来ないんだけどどうすればいいの
105:デフォルトの名無しさん
12/12/12 16:10:58.52
>>104
マルチ。
106:デフォルトの名無しさん
12/12/12 16:18:00.84
>>105
だって前に向こうで聞いたらここは解説するところじゃねーって怒られたんだもん
107:デフォルトの名無しさん
12/12/12 16:22:34.60
>>98
ありがとうございます。ついでにもう一つ教えてください
Cでboolというのありました?
cppで確認用に
int main()
{
int num;
num = 123654;
if (isLastDigit2468(num) == true )
{
cout << num << "の末尾は2,4,6,8のいずれか\n";
}
}
てのはできたんですが。
108:デフォルトの名無しさん
12/12/12 16:22:41.26
みずほFG次期システム実況スレ
スレリンク(prog板:24番)
109:デフォルトの名無しさん
12/12/12 17:16:16.17
>>107
あるよ
stdbool.hで定義されてる
110:デフォルトの名無しさん
12/12/12 17:26:03.07
あるね
111:デフォルトの名無しさん
12/12/12 17:51:59.64
>>106
そういう書き込みするやつは、大抵回答してない。
112:デフォルトの名無しさん
12/12/12 18:02:53.44
古いプログラムでは、boolのところがBOOLかintになってる
113:デフォルトの名無しさん
12/12/12 18:20:01.61
BOOLなのに0と1と-1が返ってくるGetMessage()なんてのもある
114:デフォルトの名無しさん
12/12/12 18:22:53.83
WindowsのBOOLはintじゃなかったっけ
115:デフォルトの名無しさん
12/12/12 18:29:18.74
調べたら、そうだったw
116:デフォルトの名無しさん
12/12/12 19:01:39.84
107です。皆さん、ありがとう
117: 忍法帖【Lv=11,xxxPT】(1+0:5)
12/12/12 19:07:30.32
ライフゲームのセルの初期配置パターンをtmp.txtから読み込んで、cells.txtに書き込んで、世代、セル数、セル配置を表示したい
main関数の最後辺りを弄ってたらバスエラーになるように
その前でもセル数が0で変わらないまま
URLリンク(codepad.org)
友人がこのプログラムならできたと言ってた(課題も解けてた)がいつの間にかに正しい結果が出ないように
URLリンク(codepad.org)
経験者が見たところ、ぱっと見良さそうなコードみたいですが、何かおかしい所があればお願いします。
118:デフォルトの名無しさん
12/12/12 19:09:07.54
>>99の人にも礼を言うのわすれてました。ありがとう
ちと難しかったですw
119:デフォルトの名無しさん
12/12/12 19:10:05.93
>>104
こちらの環境(Scientific Linux 6.3 + gcc 4.4.6)だと、
Ctrl+d で scanf() の戻り値が -1 になって break するけど、
そちらの環境(Windows?)だと Ctrl+d で抜けるのが利かないのかな。
例えば、
> if (scanf("%s", data[i].name) != 1)/* Ctrl+Dが押されたらbreakでループを抜ける */
> break;
↓
> scanf("%s", data[i].name);
> if (data[i].name[0] == 'q' && data[i].name[1] == '\0') /* 'q'が入力されたらbreakでループを抜ける */
> break;
'q' とかで終了するよう改造してみたらどうだろうか?
あるいは、Windowsなら conio.h の _getch() と _ungetch() を組み合わせてみるとか…
120:デフォルトの名無しさん
12/12/12 19:16:14.07
>>117
> URLリンク(codepad.org)
116行目無限ループ
121: 忍法帖【Lv=11,xxxPT】(1+0:5)
12/12/12 19:34:52.29
>>120
Control-Zで止める仕様です
因みにtmp.txtを読まずに乱数を発生させるタイプは上手くいってます
URLリンク(codepad.org)
122:デフォルトの名無しさん
12/12/12 19:45:24.78
>>119
自分で一通り調べて色々やってみたら
if (scanf("%s", data[i].name) != 1)
この行の1をEOFにするだけでCtrl+Dでループから抜けられるようになった
ありがとう
123:デフォルトの名無しさん
12/12/12 20:02:28.17
>>117
tmp.txtから正しく読まれているのだろうか?
124:デフォルトの名無しさん
12/12/12 22:18:54.48
苦しんで覚えるC言語というサイトのドラッグへの対応という項目をやっていたところ、
「ドラッグされたファイル名を表示するプログラム」が書かれていたのですが使い方が分かりません。
visual C++のデバック開始で開かれるプロンプトにテキストファイルなどをドラッグすればいいのですか?
125:デフォルトの名無しさん
12/12/12 22:31:27.04
うん
126: 忍法帖【Lv=40,xxxPT】(1+0:5)
12/12/13 00:27:13.78
>>123
filename使うの止めてファイル名指定して直で読み込むようにしたらできました
ありがとうございます
127:デフォルトの名無しさん
12/12/13 01:20:57.17
問題は const char *filename にあったのか?
128:デフォルトの名無しさん
12/12/13 01:30:41.44
なにもしてないけど壊れたってのと同じかほりがするお!
ファイルの実体を置いたりとか他にコード弄ったとか色々あるんじゃあないのかよ?
129:デフォルトの名無しさん
12/12/13 01:34:39.26
ここに質問書き込むような初学者は、知らない・理解してないに加えて、
”表現が間違ってる”事が多いから、コードをアップロードした方が誤解が少ないんだけどね。
130:124
12/12/13 01:45:11.04
自己解決しました。
調べてみたらVistaだとドラッグしてもパスが表示されないのですね。
131:デフォルトの名無しさん
12/12/13 11:02:24.31
自作関数を作っているのですが
int bmilarger(Person data[ ], int n, double v)
{
int i;
int cnt=0;
for(i=0;i<n;i++)
{
if(data[i]>=v)
{
cnt=cnt+1;
}
}
return cnt;
}
if文の所で'>=' : struct に対して正しくありません。
と出てしまいます。どこを修正すればいいのでしょうか?
132:デフォルトの名無しさん
12/12/13 11:10:28.75
if(data[i].bmi>=v)
133:デフォルトの名無しさん
12/12/13 11:10:36.93
data[i]は構造体だから、その中のどのメンバーとvを比較したいか指定する。
data[i].bmi>=v みたいに。
134:デフォルトの名無しさん
12/12/13 11:16:28.73
すいません、ありがとうございました。
感謝します。
いまいち構造体の意味が分かっていないのでしょうか?
135:デフォルトの名無しさん
12/12/13 11:20:22.73
扱う対象が値(整数、文字、実数、、)なのかデータの塊(構造体)なのか意識しないと
136:デフォルトの名無しさん
12/12/13 12:49:43.31
だね
137:デフォルトの名無しさん
12/12/13 16:00:11.30
うん、ありがとうね
138:デフォルトの名無しさん
12/12/13 16:12:13.11
いえいえ
139:デフォルトの名無しさん
12/12/14 00:24:15.07
int a;
int* p;
p = &a
これはpにaのアドレスが入るんですよね。
そうすると&pはaのアドレスではなくpのアドレスが入りますよね。
例えばpのアドレスからpの型分だけ中身を参照するとして、
アドレスpからaのアドレスから同じ分だけの領域の中身を参照出来るように
するにはどうすればいいでしょうか。
140:デフォルトの名無しさん
12/12/14 00:43:13.64
>例えばpのアドレスからpの型分だけ中身を参照するとして、
>アドレスpからaのアドレスから同じ分だけの領域の中身を参照出来るように
日本語がわからんぞ
int a = 10;
int* p = &a;
int** pp = &p;
printf("%d",**pp); //=>10
こういうこと?
141:デフォルトの名無しさん
12/12/14 00:47:07.78
>>139
URLリンク(ideone.com)
142:デフォルトの名無しさん
12/12/14 01:31:47.30
pからaの値を得たいって言ってるだけじゃないの?
URLリンク(ideone.com)
143:デフォルトの名無しさん
12/12/14 08:36:59.65
>>142
多分ポインタpへのポインタからaの値を参照したいんだと思う。
だから>>140かな。
144:デフォルトの名無しさん
12/12/14 10:08:50.25
「&pはaのアドレスではなくpのアドレスが入る」とか、ポインタを理解していれば出てこない。
わかってないんだろうな。記述方法だけ覚えてもしょうがない。
145:デフォルトの名無しさん
12/12/14 10:21:00.94
じゃあどう言えばいいの
146:デフォルトの名無しさん
12/12/14 10:25:10.72
.a と .so の区別がつかないんだけど
.soは動的リンク用で.aは性的リンク用という認識でいいの?
.saってなに?
147:デフォルトの名無しさん
12/12/14 11:01:37.69
>>146
> .a と .so の区別がつかないんだけど
> .soは動的リンク用で.aは性的リンク用という認識でいいの?
それで合ってる
> .saってなに?
こっちが聞きたい
148:デフォルトの名無しさん
12/12/14 11:28:40.94
>>146
URLリンク(www.hi-ho.ne.jp)
> スタティックライブラリは、コンパイル時にコードがプログラムに組込まれます。
> モジュールサイズが大きくなりますが、別のマシンにバイナリで配布したときに
> そのライブラリがなくても動作します。 .a で終わるファイルです。
> 共有ライブラリは、プログラムの実行時にロードされます。マシンによっては、
> その共有ライブラリがなかったり、バージョンが違ったりして、動作しないことがあります。
> .so と .sa で終わるファイルです。.sa は、古い a.out 形式で使われた共有ライブラリです。
149:デフォルトの名無しさん
12/12/14 11:42:38.66
>>145
言い方だけ学んでも意味がない。
Cのポインタを理解すれば正しい言い方をおのずと使うようになる。
150:デフォルトの名無しさん
12/12/14 11:46:06.56
.aと.soって相互に変換できる?
151:デフォルトの名無しさん
12/12/14 11:49:44.13
>>145
&p は何かを入れる入れ物ではない。
152:デフォルトの名無しさん
12/12/14 11:51:12.21
>>149
お前が理解してないのはわかった
153:デフォルトの名無しさん
12/12/14 11:54:57.04
>>150
.soの方は位置独立コードが要求されるから、大抵のOSではコンパイルし直さないと無理。
154:デフォルトの名無しさん
12/12/14 11:59:26.74
すいません教えて下さい。
外部参照について調べていたのですが
例 extern int func( char* );
char*の*はポインタ変数名を続けて書く意味でしょうか?
155:デフォルトの名無しさん
12/12/14 12:02:53.90
>>150
.soは.oをリンクしちゃった結果で、
元のファイル名が失なわれてるから無理。
.aから.soはlinuxならできるような気がするけど、
-fPICじゃないので実行開始時のリンクが遅いかも。
156:デフォルトの名無しさん
12/12/14 12:06:09.23
>>154
外部参照とは関係ないけど、そうだね。
関数プロトタイプでは、仮引数名を省略して型だけ書いてもいいので、
extern int func( char *p );
の意味。
157:デフォルトの名無しさん
12/12/14 12:09:13.54
>>152
こいつみたいな炎上学習法を実践するクズが多くてウザい。
その筆頭がコテハンだから始末が悪い。
158:デフォルトの名無しさん
12/12/14 12:30:59.03
>>156
即答ありがとうございます。m(_ _)m
159:デフォルトの名無しさん
12/12/14 12:44:36.22
変換仕様%sでscanfを使うときカンマの後に&を付けないのはなんでですか?
付けても変わらないように思えるのですが
160:デフォルトの名無しさん
12/12/14 12:45:07.03
すいませんageてしまいました
161:デフォルトの名無しさん
12/12/14 12:49:13.55
>>159
char array[100];
char *p = array;
とすると、array も &array も同じ値になっちゃうので、
付けてもいいように見えてしまう。
だけど、&p と p は違うので、動作しない。
162:デフォルトの名無しさん
12/12/14 12:50:04.43
char buff[256];
int data;
scanf("%s", buff);
scanf("%s", &buff[0]);
scanf("%d", &data);
163:デフォルトの名無しさん
12/12/14 12:52:58.66
>>159
char s[10];
scanf("%s",&s[5]); //(「・ω・)「
scanf("%s",s[5]); //\(^o^)/
164:デフォルトの名無しさん
12/12/14 13:20:59.80
>>157
顔真っ赤だな
死ねよゴミ
165:デフォルトの名無しさん
12/12/14 14:06:54.49
>>164
ポインタ理解してないチンカスになに言われても全然答えないわけだが。
悔しかったらポインタ理解してから出直すことだ。w
166:デフォルトの名無しさん
12/12/14 14:52:01.12
荒らしに構う奴は荒らし
167:デフォルトの名無しさん
12/12/14 19:56:54.95
性的リンクって///
168:デフォルトの名無しさん
12/12/15 00:37:58.89
恥ずかしながら初心者でDXライブラリ使ってるんですが
円と四角が同時に動くみたいな事をこのライブラリを使えばCでも書けるんですが
これって暗にDXライブラリの関数がスレッドの機能があるってことでしょうか?
169:デフォルトの名無しさん
12/12/15 00:45:35.61
スレッドなくとも交互に描けば可能。ソースコード確かめろ。
170:デフォルトの名無しさん
12/12/15 16:26:48.25
Linuxとかで uint32_t みたいな型を使ってるプログラムがあるんだけど
これを使うと「絶対的に」32ビットの大きさが確保されるの?
171:デフォルトの名無しさん
12/12/15 16:33:42.23
それはtypedefの内容による。
172:デフォルトの名無しさん
12/12/15 16:37:23.53
名前からしてどんな環境でも32bit unsignedであることを期待しているとは思う
173:デフォルトの名無しさん
12/12/15 16:40:17.69
いまどきstdint.hなしの環境使ってるのか?
174:デフォルトの名無しさん
12/12/15 17:21:25.76
stdint.h 見たら
typedef unsigned intuint32_t;
と書いてあった。
intって64bit環境だと64bitじゃないの?
175:デフォルトの名無しさん
12/12/15 17:25:05.38
違うよ
176:デフォルトの名無しさん
12/12/15 18:00:02.58
intは環境によってサイズが違うしlongも違う場合がある。
177:デフォルトの名無しさん
12/12/15 18:03:07.80
一言で64ビット環境と言ってもたくさんある。
LPI64: long, pointer, intが64ビット
LP64: long, pointerが64ビット
LLP64: long long, pointerが64ビット
uint32_tはそれぞれの環境で32ビットになるようtypedefされている。
178:デフォルトの名無しさん
12/12/15 18:12:15.63
> uint32_tはそれぞれの環境で32ビットになるようtypedefされている。
なるほど。ありがとうございます。
179:デフォルトの名無しさん
12/12/15 18:24:39.86
いえいえ
180:デフォルトの名無しさん
12/12/16 01:06:19.61
c言語ってコンパイルせずにインタプリタで実行して何か問題あるの?
basicと同じ順次実行言語だし何か困るの?って疑問に思いました。
181:デフォルトの名無しさん
12/12/16 01:08:06.30
>>180
無いよ
インタプリタで実行も出来るよ
182:デフォルトの名無しさん
12/12/16 01:11:33.85
>>181
インタプリタは何言語で作ったら一番良いですか?
やっぱり文字列とかの機能が多いperlとか?
183:デフォルトの名無しさん
12/12/16 01:13:19.03
コンパイル、リンクは1回でいいよ
何回も実行する
184:デフォルトの名無しさん
12/12/16 01:14:39.20
>>182
せっかくだからCで作れやw
185:デフォルトの名無しさん
12/12/16 01:15:11.84
>>182
Rubyは、Cでかかれているそうです。黒魔術もつかわれてる(つかわれてた?)
black art
186:デフォルトの名無しさん
12/12/16 01:18:52.01
C言語で標準正規分布の累積分布関数やその逆関数を計算することは可能でしょうか
エクセルでnormsdist関数やnormsinv関数を使用したファイルを作成したのですが
計算する数値の量が多すぎて1回の再計算で数十秒近く時間がかかってしまうため
直接C言語で計算するプログラムを作ればこの時間を減らせるのかなと考えています
プログラムに関する知識は現時点でゼロです
長くなりましたが、
1.C言語でプログラムを作ることでエクセルによる計算より時間を短縮することは可能か
2.可能だとして、全くの初心者がそのプログラムを作る難易度はどのくらいになるか
(1日3時間勉強にあてることができるとして、何日かかるかを目安で)
この2点について、どうぞよろしくお願いします
187:デフォルトの名無しさん
12/12/16 01:37:41.73
数値計算ライブラリを使えば速く動いて早く使える。
ゼロから自作するのは手間かかる。
188:デフォルトの名無しさん
12/12/16 01:42:26.89
>>186
まずは計算量を減らす工夫できないか考えるのが先だろう。
アルゴリズムがクソだと言語とかライブラリ変えてもどうにもならない。
189:デフォルトの名無しさん
12/12/16 01:46:33.97
速いかは知らんがこのソフトには累積分布関数の演算できるようだ。CやエクセルからもDLLとして使えると思う。未確認。
GNU Octave 2.1.x 日本語マニュアル
URLリンク(ja.wikibooks.org)
190:デフォルトの名無しさん
12/12/16 01:54:12.78
>>187>>188>>189
早速のご回答ありがとうございます
それぞれ試行してみたいと思います
本当にありがとうございました
191:デフォルトの名無しさん
12/12/16 02:28:24.48
正規分布くらい自分で実装しても大したことないよ。
192: ◆QZaw55cn4c
12/12/16 02:48:28.71
ボックスミューラー法とか
193: 忍法帖【Lv=3,xxxP】(1+0:5)
12/12/16 05:59:51.72
Cってさ、クラス使えないんだよ
知ってた?
194:デフォルトの名無しさん
12/12/16 08:51:39.72
またチンカスがトンチンカンな事ほざいてるのか。
チンカスは最強のめるせんぬついすたーをとなえた。えぃっ。wwwww
>>186
excelが遅いんじゃなくて、多分キミのExcelシートの作り方が悪い。
normsdistは標準正規分布表引くだけ、normsinvは逆引きだけの処理なので、非常に高速。
normsdistやnormsinv使わないで値そのままにしても同じくらい時間かかるんじゃないか。
= normsdist(A1)
のセルを
= A1
に変更して時間計ってみろ。
195:デフォルトの名無しさん
12/12/16 09:06:40.14
オレはお前がそんなにCを使いこなせていないことを知ってるぞ
196:デフォルトの名無しさん
12/12/16 09:10:58.95
キサマなぜそれを
197:デフォルトの名無しさん
12/12/17 16:24:12.08
C言語で音(音楽)を出力させるにはどうしたらよいのでしょうか??
198:デフォルトの名無しさん
12/12/17 16:31:42.95
>>197
ハードウェア依存。言語の問題ではない。
199:デフォルトの名無しさん
12/12/17 17:08:33.08
音源チップを直接扱うような低水準なことから
DirectXあたりを使った高水準なモノまで
いろいろできる
音源チップ用のコントローラとかなると
そりゃもうデバイスドライバあたりの面倒くささになる
200:デフォルトの名無しさん
12/12/17 17:12:11.39
いろいろあるね
201:デフォルトの名無しさん
12/12/17 17:31:50.54
Windowsなら
system("start music.mp3");
202:デフォルトの名無しさん
12/12/17 17:35:47.80
>>201
最小化した状態で起動するなら
system("start /min music.mp3");
203:デフォルトの名無しさん
12/12/17 17:36:05.55
自己解決しました
204:デフォルトの名無しさん
12/12/17 20:01:46.44
ベル文字ってあるでしょ
音でないけど…
205:デフォルトの名無しさん
12/12/17 20:03:57.70
うちは出るよ。
でも実際に音をならすのは端末の機能。
206:デフォルトの名無しさん
12/12/17 20:05:19.32
環境依存?
207:デフォルトの名無しさん
12/12/17 20:17:44.73
#include <stdio.h>
int main(void)
{
int i;
int N = 10;
for(i = 0; i < N; i++) {
printf("\007");
}
return 0;
}
208:デフォルトの名無しさん
12/12/17 20:34:22.05
>>206
うん
209:デフォルトの名無しさん
12/12/18 14:44:07.60
>>202
消防以下のレベルに善く答えてあげたな。
210:デフォルトの名無しさん
12/12/18 15:44:41.85
関数の引数なしを
void test(){}
と()内にvoidと書かなくても大丈夫?
211:デフォルトの名無しさん
12/12/18 15:49:22.94
昔はそう書いた
今ならvoidつけた方がよい
212:デフォルトの名無しさん
12/12/18 15:59:02.16
>>211
なんで?
213:デフォルトの名無しさん
12/12/18 16:06:52.58
そのまま関数宣言に使ったときにも、引数がないことが明確になるから。
214:デフォルトの名無しさん
12/12/18 16:10:18.25
最近はハードの性能も上がり、色々こねくり回すよりも可読性を重視したコーディングが求められるだろうから、
やろうとしていることはなるべく明示した方が良い。
バグ潰しの効率もずいぶん変わるし、何より考えすぎたコードは次の日自分でも何やってんだか分からなくなったり。
215:デフォルトの名無しさん
12/12/18 16:34:01.01
>>213
>そのまま関数宣言に使ったときにも、引数がないことが明確になるから。
それ、チェック機能の弱い、古いコンパイラ時代の常識。
216:デフォルトの名無しさん
12/12/18 16:36:09.14
Cだと書いた方がいいね
他の言語(C#とか)だと書かないと自動的に引数なし扱いになるけど
217:デフォルトの名無しさん
12/12/18 17:03:29.86
なるけどね
218:デフォルトの名無しさん
12/12/18 17:41:21.75
まぁ一応書いておくだろ
219:デフォルトの名無しさん
12/12/18 18:28:18.40
宣言なら書かないといけないけれど、定義ならどっちでもいいよ。Cは。
220:デフォルトの名無しさん
12/12/18 19:07:08.53
定義をコピペして関数プロトタイプ宣言にするから自分は書くけどね
221:デフォルトの名無しさん
12/12/18 19:46:48.09
どっちでもいいならすこす長くてもわかりいいほうにしとけってばっちゃが
222:デフォルトの名無しさん
12/12/18 20:11:10.05
ありがとうCではちゃんと記述する
それ以外は略してもいいという認識で行く
223:デフォルトの名無しさん
12/12/18 21:00:22.85
Cなら略してもいいのだ。他の言語では、voidの意味になってしまう
224:デフォルトの名無しさん
12/12/18 21:35:50.50
C#ってvoid書くとコンパイルエラーになるよね
225:デフォルトの名無しさん
12/12/18 22:56:50.25
なるよね
226:デフォルトの名無しさん
12/12/18 23:05:38.14
ネー
227:デフォルトの名無しさん
12/12/18 23:10:46.83
unionとstructってどう違うんですか?
struct{int a, double b, char c,char d[10][10]}←できる
union{int a, double b, char c, char d[10][10]}←できる
228:デフォルトの名無しさん
12/12/18 23:14:38.62
たしか、unionとstructってメモリに展開した時に違いが発生するんだよね?
unionは1つの連続した領域として取られるハズ
229:デフォルトの名無しさん
12/12/18 23:14:49.55
unionは、どれか1つのメンバしかメモリに載らない
230:デフォルトの名無しさん
12/12/18 23:16:10.57
1つの代入した、もう1つのメモリ上の領域は破壊(塗り潰す)される
231:デフォルトの名無しさん
12/12/18 23:16:15.65
>>228
あやふやなら回答しない方がいい
232:デフォルトの名無しさん
12/12/18 23:16:52.60
確実な回答おがないしましゅ
233:デフォルトの名無しさん
12/12/18 23:17:39.48
確実な回答が欲しいなら、自分で仕様書なり調べろ
234:デフォルトの名無しさん
12/12/18 23:19:03.78
それならそうと一番最初に家よks
235:デフォルトの名無しさん
12/12/18 23:26:51.91
unionはメンバ中で一番に大きいメモリサイズで領域を確保する
d[10][10]の領域の中に、int a, double b, char cの先頭を指してる
だから、どれか代入すると他のメンバ変数はメモリ上に載せることが出来ない
236:デフォルトの名無しさん
12/12/18 23:31:36.87
>>235
最小のプログラムでunionの場合structと比べてこれができないっていう
例を教えて下さい。
237:デフォルトの名無しさん
12/12/18 23:34:55.94
できる
struct Foo a;
a.a = 10;
a.b = 0.1;
できない
union Bar b;
b.a = 10;
b.b = 0.1;
printfでconsoleにでも出力汁
238:デフォルトの名無しさん
12/12/18 23:36:51.35
自己解決しました。
239:デフォルトの名無しさん
12/12/18 23:38:26.58
1つだけ、今後のアドバイスすると、プログラマにはならない方がいいよ
君には向いてないから
240:デフォルトの名無しさん
12/12/18 23:38:41.91
>>237
ランタイムエラーだったけどありがとうございます。
さすればunionって欠陥品ということでしょうか?
241:デフォルトの名無しさん
12/12/18 23:41:06.74
うn
242:デフォルトの名無しさん
12/12/18 23:41:42.63
省メモリで組む必要がある組込み用途で必要
243:デフォルトの名無しさん
12/12/18 23:46:24.41
sizeof演算子で、structとunionの大きさ確認しろ
244:デフォルトの名無しさん
12/12/18 23:59:23.38
struct アレやコレを一緒にまとめて入れておく。
union ひとつの場所に、ある時はアレ、またある時はコレと使い分ける。
245:デフォルトの名無しさん
12/12/19 00:06:59.28
入門での中途半端な文法レベルなら、rogueなり、
tux racerなり落としてきて使い方眺めた方が早い
飯食うなら、枕元にBSDのコード置くぐらいのことした方が良い
246:デフォルトの名無しさん
12/12/19 07:47:18.99
良いね
247:デフォルトの名無しさん
12/12/19 10:53:20.83
もっとも、c++,javaでヤドカリ本の暗記した方が潰しがきくけどね
248:デフォルトの名無しさん
12/12/19 11:24:42.62
スレタイ読めないヴァカがいるぞ
249:デフォルトの名無しさん
12/12/19 14:57:04.28
>>248
お前だ
250:デフォルトの名無しさん
12/12/19 21:34:21.71
cで何かするならgtkあたりがベター
cの入門なら、gnome付属のゲームでも読めば?
大学講座の単位なんて飾りですw
入門者には、それが分からんのですw
251:デフォルトの名無しさん
12/12/19 21:55:21.74
何か今日あった?
入門スレでしか暴れられない方々が多いな。
252:デフォルトの名無しさん
12/12/19 22:49:52.00
多いね
253:デフォルトの名無しさん
12/12/20 00:10:37.14
一文字だけstrcpy,strcatしたい場合はどうしたらいいですか?
char buf[10];
char buf2[10];
strcpy(buf,buf2[0]);
char buf3[2];
buf3[0]=buf2[0];
strcpy(buf,buf3);
とするのはさすがに面倒なので.....
と一文字だけコピーしたい場合エラーが出るので。
254:デフォルトの名無しさん
12/12/20 00:11:56.35
大学が役に立たないから、代りに入門者の教育してるんだろ
255:デフォルトの名無しさん
12/12/20 00:14:56.64
strncpy
256:デフォルトの名無しさん
12/12/20 00:19:16.97
strcpy(buf,buf2[0]);
はbuf2[0]がポインタでなくて、char型
257:デフォルトの名無しさん
12/12/20 00:23:56.74
入門レベルでvisual studioのようなIDEなんて使うと、
文法やコンパイルの仕組みを理解できないから、ある程度に達するまでemacsやvimを使え
258:デフォルトの名無しさん
12/12/20 00:24:26.63
>>253
sprintf(buf, "%s%c", buf, buf2[0]);
259:デフォルトの名無しさん
12/12/20 00:29:58.53
入門段階でgdbのマニュアルを端から端まで読んでおけば、
ポインタや、ポインタの派生型が大体、何かは理解できる。
屑大学の馬鹿って、院生にもなって動画サイトに上がってる
HSP製のゲームに感動するような場所w
260:デフォルトの名無しさん
12/12/20 00:45:48.07
>>259
バカはお前だ
261:デフォルトの名無しさん
12/12/20 00:50:53.35
OOPLなんて大学1年次のうちに、主要言語の文法は全部おぼえてしまう方が良いよ
学部2年の前半でUMLとデザパタを一通り暗記するぐらいのペース。後半でGUI弄る。
学部3年の前半で業界動向を調べつつ、4年次の研究テーマを事前に勉強。
このぐらいのペースでないと就職活動で皆が希望するような所には間に合わないよ。
262:デフォルトの名無しさん
12/12/20 00:52:05.62
>>260
中身のない煽りって、どうでも良いな^^
263:デフォルトの名無しさん
12/12/20 01:04:24.52
それと、マニュアル、チュートリアル、リファレンスの類は全部、英語で読め。
入門書を買うなら洋書を買え
264:デフォルトの名無しさん
12/12/20 01:13:05.49
>>255
strcatで無いですかね?
buf[3]とbuf[7]を連続して
buffer[100]に連結したい。
でも一文字だからできないという。
265:264
12/12/20 01:15:10.71
bufは"abcdefghi"
buffer[100]=all \0;
buffer[0]='U';
strcat(buffer,buf[3]);
strcat(buffer,buf[7]);
printf("%s",buffer)=Udh;
としたいです。
266:デフォルトの名無しさん
12/12/20 01:20:10.56
わけわからん
267:デフォルトの名無しさん
12/12/20 01:22:57.93
こういうことけ?
strncat(buffer, &buf[3], 1);
strncat(buffer, &buf[7], 1);
268:デフォルトの名無しさん
12/12/20 01:27:08.77
>>264
strncat(buffer,*buf[3],1);
strncat(buffer,*buf[7],1);
環境ないから動くかシラネ。
strcatでやれって課題なの?
269:268
12/12/20 01:27:51.04
ああ、間違えた.&だ
270:デフォルトの名無しさん
12/12/20 01:28:10.41
>>262
>>259 みたいな嘘ばかりの腐った中身なんて無いほうがいいだろ
271:268
12/12/20 01:30:02.50
>>270
嘘だって根拠は?
272:264
12/12/20 01:30:23.53
>>268
ありがとうー
いや連結したいからそれが実現できるなら何でもいいよ
何とかできそう
273:デフォルトの名無しさん
12/12/20 01:36:43.57
>>272
strncat(buffer, buf + 3, 1);
strncat(buffer, buf + 7, 1);
274:デフォルトの名無しさん
12/12/20 01:38:44.24
>>273
bufって定数だけど、それでポインタ演算うまくいくっけ?
275:デフォルトの名無しさん
12/12/20 03:57:38.16
>>274
そんなことぐらい自分で判断しやがれ
ここで聞いても答えはでんだろ
他の人の意見を聞くならまだしも
お前が信じるかどうかなんて知ったことじゃねえ
276:デフォルトの名無しさん
12/12/20 12:44:20.86
定数だろうが変数だろうがアドレスの加算は正常にできる。
277:デフォルトの名無しさん
12/12/20 12:53:00.14
>>274
bufを書き換えるわけじゃないからok
278:デフォルトの名無しさん
12/12/20 13:19:11.34
初心者はstrcat,strncatは使わない方がいいよ
初心者ほど使いたがるけど初心者ほど使い方間違える
279:デフォルトの名無しさん
12/12/20 13:29:40.59
>>270
>>259は実体験に基づいた真実だと思うぞ。>>259のようなことは書けない。
280:デフォルトの名無しさん
12/12/20 17:20:54.96
sscanfとsprintfがあれば、まあだいたいのことはできるな
281:デフォルトの名無しさん
12/12/20 20:52:14.17
>>280
putcharとgetcharがあればあとはいらない
282:デフォルトの名無しさん
12/12/20 21:31:34.70
yacc/lexいりませんか?
283:デフォルトの名無しさん
12/12/20 21:37:13.12
yaccはいる。lexはあんまり使わないからどっちでもいい。
284:デフォルトの名無しさん
12/12/20 23:15:50.61
一般的なペーストビンでも使ってろ
285:デフォルトの名無しさん
12/12/20 23:39:55.94
antlrやjavaccの方が使われてるけどな
286:デフォルトの名無しさん
12/12/21 13:36:57.42
質問ですお願いします
ソースは以下なのですが(自作関数略)VC++だとコンパイルでき、結果も正しくでます
しかし、bcc32や、他のコンパイラだとエラーが出ます
「エラー E2277 a.c 15: 左辺値が必要(関数 main )」
#include <stdio.h>
int mdays(int y, int m);
int uruu(int year);
int main(void)
{
int y1,m1,d1,y2,m2,d2;
int i,j,days;
while(scanf("%d%d%d%d%d%d",&y1,&m1,&d1,&y2,&m2,&d2)){
if(y1<0 || m1<0 || d1<0 || y2<0 || m2<0 || d2<0)
break;
for(i=y1,days=0; i<=y2; i++)
for(i!=y1? j=1: j=m1 ; i!=y2? j<=12: j<=m2 ; j++)
days+=mdays(i,j);
days-=d1;
days-=(mdays(y2,m2)-d2);
printf("%d\n",days);
}
return 0;
}
恐らく、三項演算子が原因だと思うのですが、どうしてなのかさっぱりわかりません
よろしければ是非教えてください。よろしくお願いします
287:デフォルトの名無しさん
12/12/21 13:58:09.57
こう書きたかったのか? よくわからん
URLリンク(ideone.com)
こんな変な書き方する奴がいるから三項演算子禁止とかいう
アホルールが作られるんだろうなぁ
ループの条件判定で比較を無駄に増やして誰が得するんだ?
288:デフォルトの名無しさん
12/12/21 14:01:19.46
原因がわかってるなら対策すればいいのに。
289:デフォルトの名無しさん
12/12/21 18:08:49.46
確かにこんなの見たら使用禁止にしたくなるな。
290:デフォルトの名無しさん
12/12/21 18:15:22.63
なるね
291:デフォルトの名無しさん
12/12/21 18:36:17.90
>>286
本当にVC++でコンパイルできるの?
VC++2010だとコンパイル出来ねぇぞ
ひょっとしてVC++でだけ、C++でコンパイルしてないか?
条件演算子の優先順位がC++とCで微妙に異なるのでそのせいじゃないのか
292:デフォルトの名無しさん
12/12/21 18:46:44.54
if文と三項演算子は別物だと考えろ。
293:デフォルトの名無しさん
12/12/21 20:12:30.88
かんがえろよね
294: ◆QZaw55cn4c
12/12/21 20:27:51.26
三項演算子の正しい使い方
スレリンク(tech板:594番)
295:デフォルトの名無しさん
12/12/21 20:31:05.51
自己解決した
296:デフォルトの名無しさん
12/12/21 22:34:24.35
「コードは短ければ理解しやすい」という命題への反証の良い例
297:デフォルトの名無しさん
12/12/21 22:47:02.52
あああ 変態なことしたい! 性欲まみれの会員とチャットしてくれ!!頼む!!
298:デフォルトの名無しさん
12/12/21 22:50:25.88
じゃあラーメンタイマーの仕様定義するからよろです。
・ラーメンの待ち時間の長さ&商品によって異なる味の変化をデータベース化
例:商品Aでは4分で「麺のふにゃふにゃ感が芽生えはじめる」
というような情報に基づき柔軟に味を調節可能
データベースは、ある設定でラーメンが出来たら、感想フォームを表示、
ここに感想を入力していくことでオリジナルのデータベースが出来あがっていくという仕組み。
さらに、TCP/IP通信でこのデータベース情報を交換できる。
・ラーメンが出来るまでの時間をミニ格闘対戦ゲームで潰せる「時間があっというまに経つね」機能
TCP/IP通信で、ロビーをデディケートサーバーで提供できるような感じで。
・ラーメン作成回数・日時・商品情報から、ラーメンにおける摂取カロリー計算や
嗜好分析などを行える統計機能つき。
この統計から、「おすすめの新作カップメン」みたいな情報も表示できる。
タイムリミットは明日の6時までに適当なアプロダで、GPLで。
299:デフォルトの名無しさん
12/12/21 23:02:29.93
なんだコイツ
真正のアホだ
300:デフォルトの名無しさん
12/12/21 23:09:47.71
そうか?
301:デフォルトの名無しさん
12/12/22 00:08:21.07
int型配列で間にある要素を削除して詰める方法ありますか?
int a[5]; a[0]=0; a[1]=1; a[2]=2; a[3]=3; a[4]=4; a[5]='\0';
a[2]を削除して間を詰めて
a[0]=0; a[1]=1; a[2]=3; a[3]=4; a[4]='\0'; a[5]='\0';
としたいです。
全然方法が思い浮かばないんですが...
302:デフォルトの名無しさん
12/12/22 00:08:48.97
GPLはちょっと
303:デフォルトの名無しさん
12/12/22 00:11:11.12
>>301
人が並んでる行列を詰めるのと一緒だろ。
304:デフォルトの名無しさん
12/12/22 00:12:51.47
なにそれこわい
305:デフォルトの名無しさん
12/12/22 00:13:25.01
>>301
a[2]=a[3];
a[3]=a[4];
a[4]=a[5];
つまり、
for(i=2;i<5;i++)a[i]=a[i+1];
306:デフォルトの名無しさん
12/12/22 00:15:54.27
>>305
関数として一般化したらどうなりますか?
kansu(int a[] ,int integer){}
strlenした時に消した要素の分長さも減っていてほしいです。
307:デフォルトの名無しさん
12/12/22 00:18:23.78
>>298
一度、似たような課題を何度か解いたことある人が半日でやってみせて
俺スゲェーってやるような問題.大体、やねうらお辺り
308:デフォルトの名無しさん
12/12/22 00:33:17.67
>>306
>strlenした時に消した要素の分長さも減っていてほしいです。
int配列だから、strlen使えない。
URLリンク(ideone.com)
309:デフォルトの名無しさん
12/12/22 00:44:06.72
>>308
ありがとう!
310:デフォルトの名無しさん
12/12/22 00:56:01.71
オブジェクトの初期化の意味がわからないです
どういうときに初期化するのですか?
初期化しないとどうなるんですか??
311:デフォルトの名無しさん
12/12/22 00:56:08.56
>>308,309
詰めたいエリアの途中に、0があるとNG。
312:デフォルトの名無しさん
12/12/22 01:02:21.34
初期化しないとどんなデータが入ってるのかわからない
初期化しないままでたらめなデータを使って計算すると意図しない動作になる
313:デフォルトの名無しさん
12/12/22 01:08:27.70
>>312
呼ばれる度にデータが変わるので、初期化しないと変わったデータのまま処理してしまうってことですか?
314:デフォルトの名無しさん
12/12/22 02:32:17.38
>>301
memmoveでも使ってろ
315:デフォルトの名無しさん
12/12/22 03:05:27.31
>301
#define DC(b) case b:a[b]=a[b+1];
int a[6]={~};
switch (x){DC(0) DC(1) DC(2) DC(3) DC(4) DC(5)}
316:デフォルトの名無しさん
12/12/22 12:40:22.74
>>301のはspliceで検索すればいい
C++にはstd::list::spliceですでに存在している
Cではそれっぽいソースをどこからともなく探せばいい
spliceについては、Javascript、php、perlの解説にその挙動が詳しい
317:デフォルトの名無しさん
12/12/22 14:42:31.05
アホか。
spliceという一般的な単語からそれっぽいソース探してなおすより
最初から書いた方がはやいわ。
318:デフォルトの名無しさん
12/12/22 14:51:34.05
↑アホ
319:桃白白
12/12/22 14:55:23.68
>>318
そうか? spliceは値の挿入、値の削除、値の置換をしちゃう関数だ。
削除のためだけにspliceを実装するのはりんごを剥くために万能ナイフを
買いに行くようなもの。果物ナイフで剥けばいいじゃん。
320:デフォルトの名無しさん
12/12/22 14:58:31.47
結局>>314が一番ラクでよくね?
321:デフォルトの名無しさん
12/12/22 16:18:26.88
>>318にとって>>301のお題はとてつもなく難しいのだろう。
能力なさそうだからホームレスにでも転職すりゃいいのに。
322:デフォルトの名無しさん
12/12/22 16:38:08.22
遺伝的アルゴリズムについて詳しく説明してあるサイトってありますか??
自動作曲をしようと思っているのですが、うまくいきません
評価関数とかをどういうふうにプログラムしたらいいのかわからなくて…
323:デフォルトの名無しさん
12/12/22 16:40:59.29
芸術系の評価関数はねーだろw
人力じゃん人力
324:デフォルトの名無しさん
12/12/22 17:31:54.14
ゲームなんかの敵アルゴリズムで経験を積んで少しずつ強くなる
みたいな用途(プレステ1のアストロノーカ)には適すると思うけど
作曲みたいに人の感性に依存するものは人にしか無理だと思う。
詳しく解説した書籍は知る限りでは洋書に頼ることになるはず。
日本語書籍では↑のアストロノーカ作者が書いた本が「あった」
のだが、今は絶版となっている。
325:324
12/12/22 17:31:59.88
C99(C89/C90)で OpenAL や WindowsAPI を使わずに
音を鳴らす方法を模索しています。
・printf("\a"); や
・ncurses で beep(); までは見つかったのですが
結局ビープ音しか鳴らすことができていません。
なにかよい方法 / ライブラリなどがありましたら教えてください。
環境:
Mac OS X 10.6.8
i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666)
326:デフォルトの名無しさん
12/12/22 17:33:27.05
>>324の絶版書籍は「マッチ箱の脳」という本です。
327:デフォルトの名無しさん
12/12/22 17:35:04.91
>>325
環境依存なのでC言語の規格が定める範囲の外の話です。
汎用的な方法はありません。お使いのハードウェアに適した
方法を使ってください。
328:デフォルトの名無しさん
12/12/22 17:37:30.12
>>324
URLリンク(www.1101.com)
本がウェブサイトになってました(
329:デフォルトの名無しさん
12/12/23 00:08:18.62
スレチだろうけど…
C言語入門向けの一番のおすすめの書籍はありますか?
330:デフォルトの名無しさん
12/12/23 00:18:46.44
>>329
URLリンク(www.yfcbookshelf.com)
これ
331:デフォルトの名無しさん
12/12/23 00:19:02.86
ふつうのlinuxプログラミング入門(青木...)
332:デフォルトの名無しさん
12/12/23 00:20:46.65
Linuxプログラミング
例題で学ぶUNIXプログラミング環境のすべて(ニール・マシュー)
333:デフォルトの名無しさん
12/12/23 00:25:02.79
下の本は中身が古くて、cvsやrcsコマンドについては歴史的な価値しかないと思う
334:デフォルトの名無しさん
12/12/23 00:26:42.91
歴史的価値とは?
335:デフォルトの名無しさん
12/12/23 00:27:41.39
SCMなんて流行り廃れが激しすぎて、今日日の主流がsubversionかgitだから
336:デフォルトの名無しさん
12/12/23 00:35:50.14
プログラミング入門なら、まつもとゆきひろ辺りが監修してた「CodeReading」
337:デフォルトの名無しさん
12/12/23 00:38:07.23
「C実践プログラミング」 でCの文法、make、gdbなど、基礎を習得
↓
「C言語ポインタ完全制覇」 or 「秘伝C言語問答 ポインタ編」 でポインタに関して完全理解する
↓
「エキスパートCプログラミング―知られざるCの深層」 でスタック、ヒープ、リンカ、ローダなど周辺知識を習得
↓
「C言語によるオブジェクト指向プログラミング入門」 で大規模プログラムの作り方を学ぶ
↓
「C言語デバッグ完全解説」でバグに強いプログラムの記述法をマスター
↓
「Code Complete(上)(下)」でより良いC言語プログラムとは何かを各人で考察する
↓
神の誕生
338:デフォルトの名無しさん
12/12/23 00:40:09.73
>>337
は?それ、ようやく現場で役に立つレベルだろ
339:デフォルトの名無しさん
12/12/23 00:44:36.07
入門スレで、現場ガーって言ってる奴は仕事経験ないだろ。
いやあったら寧ろ遠慮したい。
340:デフォルトの名無しさん
12/12/23 00:47:20.76
より酷いのか、より凄いのか、どっちだ?
341:デフォルトの名無しさん
12/12/23 01:08:37.35
「c言語によるオブジェクト指向プログラミング入門」この辺りからイラナイだろ
段階的には素直にjavaかc++でも覚えて、
デザパタなりリファクタリングなり覚えた方が悦楽に浸れるだろうし、
それに飽きてから、より高度でマニアックなプレーに走った方がソソるはず
342:デフォルトの名無しさん
12/12/23 02:24:42.90
unsigned char *fn[] ={ "a.bmp" ,"b.bmp" ,"c.bmp" ,"d.bmp" ,"e.bmp" };
ファイル列のリストが欲しいだけなのだけど、IDEにアンダーラインで指摘されてしまいます。
『Error:型"const char *"の値を使用して型"unsigned char *"のエンティティを初期化することはできません』って。
これが出来ないんじゃmain関数に引数渡せないでしょ・・・とも思うけど、俺が何か勘違いしているんだろうなあ。
すいません、教えて下さい。 msdnのどこを見れば良いのか分からなくて。
VS2010EXPRESSなのですが。
343:デフォルトの名無しさん
12/12/23 02:30:08.12
unsignedとったら行けそうな気がしないでもない
344:342
12/12/23 02:41:25.71
>>343
ありがとうございます!
昔からの習慣に思考停止しておりました。
IDEがそう教えてくれているのに理解出来ない辺り、どこに出しても自慢出来る低能ですね。
345:デフォルトの名無しさん
12/12/23 02:42:44.08
つーかなんでunsignedつけたのか理由を述べよ
346:デフォルトの名無しさん
12/12/23 02:43:53.83
それは右辺が一時的にしか存在しない可能性があり、データが消える可能性がある。
fn[] ="a.bmp";だと適切なメモリを確保してくれるが。
347:デフォルトの名無しさん
12/12/23 03:01:42.18
c言語でグラフィックプログラムしてみたんだけどライブラリにあった
関数でコールバック関数ってのが出てきました。コールバック関数って何ですか?
348:デフォルトの名無しさん
12/12/23 03:11:23.29
与格が無いからねぇ
349:デフォルトの名無しさん
12/12/23 03:20:34.17
型をあわせるという思考があるのならこんなエラーなど
出ないはずなんだが・・・
右辺と左辺で型が違う時点で違和感を感じないとだめ。
というか文字列リテラルは基本的にsigned charだから。
350:342
12/12/23 03:25:36.96
>>345
文字に負数はないから。
現存するwindowsではない古いコード読み直したら、文字列扱う場合は
総てunsigned付けていましたヽ(´∀`)ノ
351:デフォルトの名無しさん
12/12/23 03:25:41.98
>>347
コールバックというのは何かのイベントが発生した時に
イベントをハンドリングする処理からコールバックされる
関数のこと。
割り込みハンドラなんかでよく使うけど、UI処理などでも
ボタンが押されたらイベントハンドラからコールバックを
してくれるとか、イベント系ではよくある処理方法。
352:342
12/12/23 03:32:13.44
>>349
singed、肝に銘じます。
353:デフォルトの名無しさん
12/12/23 03:37:14.97
unsigned かsigned かはコンパイラのオプション。
規格ではsigned かもしれん。
354:デフォルトの名無しさん
12/12/23 04:42:54.47
charはsigned charかunsigned charのどっちかと同じ型だけど、実際にどっちなのかは処理系依存。
C++だとそれぞれ別の型。
だったような気がする。
355:デフォルトの名無しさん
12/12/23 08:00:19.12
気がするね
356:デフォルトの名無しさん
12/12/23 10:28:25.70
勉強し始めたばかりなんですが、
なんでメモ帳にプログラムを書いて
結果が出るんですか?
メモ帳にそういう機能が付いているからなのでしょうか?
357:デフォルトの名無しさん
12/12/23 10:43:00.83
>>356
>結果
普通出ません
358:デフォルトの名無しさん
12/12/23 10:46:41.68
>>357
あ、そうなんですか?w
359:デフォルトの名無しさん
12/12/23 11:43:39.04
うん
360:デフォルトの名無しさん
12/12/23 13:22:55.19
>>357
裏技を使えば出る
361:デフォルトの名無しさん
12/12/23 14:26:27.96
フリーのもあるが、最低でも5万円位のメモ帳買わなきゃ
362:デフォルトの名無しさん
12/12/23 19:23:49.74
>>356
こういうレス好きだわあ
363:デフォルトの名無しさん
12/12/23 22:01:55.26
好きだね
364:デフォルトの名無しさん
12/12/24 01:44:28.84
こんにちは。いきなりですが、
txtファイルにある
14
1001 90 80 70 67
1002 60 50 40 60
1003 55 30 56 65
1004 88 70 77 20
1005 60 30 90 30
1006 100 0 100 100
1007 23 33 21 50
1008 65 66 46 98
1009 58 87 88 64
1010 30 55 63 32
1011 65 54 70 77
1013 98 89 79 90
1014 100 60 95 68
1016 30 22 56 30
という数値を2次元配列に格納して平均が高い順に並べ替えるプログラムを作成中なのですが、
イマイチどういう風に書くのかが分かりません・・・
ご教授頂けるとお願いします・・・
365:デフォルトの名無しさん
12/12/24 01:50:28.83
宿題は宿題スレへ
366:デフォルトの名無しさん
12/12/24 03:42:57.03
fopenでファイル開いて、
sscanfでバッファ読み取って、配列に代入
平均求める関数とバカソートかいて
レポートを提出する
367:デフォルトの名無しさん
12/12/24 09:37:22.09
>>364
X 教授
O 教示
368:デフォルトの名無しさん
12/12/24 10:08:23.72
>>367
国語辞書ぐらいひけよ、ネトウヨ。
369:デフォルトの名無しさん
12/12/24 10:49:25.57
>>368
その上で言ってるんだよ。ゴミカス。
テメーのようなゴミカスに「特別に与える」義理はねーし、
テメーのようなゴミカスを弟子にもった憶えもねー
きょう‐じゅ〔ケウ‐〕【教授】 [名](スル)
1 学問や技芸を教え授けること。「書道を―する」
さず・ける〔さづける〕【授ける】 [動カ下一][文]さづ・く[カ下二]
1 目上の者が目下の者に特別に与える。「学位を―・ける」「勲章を―・ける」
2 師が弟子に教える。伝授する。「秘伝を―・ける」「知恵を―・ける」
370:デフォルトの名無しさん
12/12/24 11:05:49.71
↑アホ
371:デフォルトの名無しさん
12/12/24 11:34:05.72
↑アホ
372:デフォルトの名無しさん
12/12/24 12:06:01.07
勝った
373:デフォルトの名無しさん
12/12/24 12:21:54.84
>>369
国語辞書ひいても意味がわからんのか、ネトウヨは。。。
374:デフォルトの名無しさん
12/12/24 14:01:41.79
>>373
人に教えをこうときは「教示」で正解だと思うんだけど、なんで言い争ってんの?
「教授」だと人称(つまり、ここでは言ってる人)だから変だよ?ってことなんじゃないのか?
教示:(相手に)教え示す(ように頼む)
教授:(自分が相手に)教え授ける
375:デフォルトの名無しさん
12/12/24 14:04:40.66
更なるアホが来た
376:デフォルトの名無しさん
12/12/24 14:21:05.58
反論できないんだね
377:桃白白
12/12/24 14:38:46.85
>>374
桃白白も話題に混ぜてほしい。
Aさんが教示するといったとき教示するという動作の主体はAさん。
Aさんが教授するといったとき教授するという動作の主体はAさん。
動作の主体は教示するといったときも教授するといったときも同じAさん
なわけだから、教示すると教授するに違いはない。
頂くが教授に付いている。頂くは前の動詞を自分が~してもらうという意味にする補助動詞。
AさんがBさんに「ご逝去頂きたい」といったとき、AさんはBさんが逝去することを
Bさんにお願いしているわけ。
だから教授でも教示でもどっちだもいんじゃねってのが桃白白の結論。
378:デフォルトの名無しさん
12/12/24 14:44:37.23
さすがお前ら
プログラミング以外の事には詳しいんだな
379:デフォルトの名無しさん
12/12/24 14:44:59.67
>>369 のどこをどう見たら人称につっこんでるって結論になるんだよwww
380:デフォルトの名無しさん
12/12/24 15:12:36.29
>>377
教授するという場合は、師弟関係や主従関係などの上下関係が存在する。
どこの馬の骨ともわからない名無しにいきなり「教授して欲しい」と乞われて、
はいそうですかと授ける事はありえない。
貢物差し出して、どうか教授してくださいと懇願するなら考えない事もない。
381:デフォルトの名無しさん
12/12/24 15:16:52.19
>>380
これ大事よね
どこの誰とも知らん相手から師匠になってくれと頼まれてはいそうですかとか
ありえん
道を示して欲しいというなら教えるものもいるだろう
382:デフォルトの名無しさん
12/12/24 15:19:19.90
そんなこんなでそろそろググって教授が間違いなのは、初発の人も気がついた頃だろうさ
あとは蛇足、言葉遊びするよりコード書け(オレモナー)
383:デフォルトの名無しさん
12/12/24 15:36:07.71
>>380-381
それはお前が勝手に付け足した解釈
だからお前はアホなんだ
384:デフォルトの名無しさん
12/12/24 15:50:27.94
>>383
まだやってんのかよ。池沼。
385:デフォルトの名無しさん
12/12/24 15:53:53.96
日本語わからない朝鮮人が「教授」で正しいと暴れているのか?
386:デフォルトの名無しさん
12/12/24 15:54:56.23
>>385
死ねゴミチョン
387:桃白白
12/12/24 15:56:35.66
>>380
お前は道端で知人にあって知人から「よお大将、ひさしぶり」と声かけられたら
「ふざけるな俺は大将じゃない、俺の股間は足軽だ」とぶち切れるタイプ?
桃白白なら請われれば余裕でいっときの師匠となって桃白白がもつ
バブルソートの全技術を授けてやっちゃうけどね。桃白白なら余裕でそれ
くらいこなしちゃうけどね。そうやって桃白白の弟子たちが世に羽ばたいて
いってくれることが桃白白にとってなによりの幸せだから。
日本語では尊敬語や謙譲語を使うだけで上下関係というのは生じるわけで、
上下関係にないから教えることがありえないとするなら、お前はご教示頂けないでしょうか?
と言われたときにもどこの馬の骨じゃーと頭から湯気を出さざるを得ない状況に
置かれちゃうな。お前苦労人だな。というかクレーマーだな。
388:デフォルトの名無しさん
12/12/24 16:01:57.08
>>386
わっ、 朝鮮人が火病った。
>>387
> 上下関係にないから教えることがありえないとするなら
違うよ、上下関係が無いから授ける事はありえないと言っている。
389:桃白白
12/12/24 16:13:14.89
>>388
だったらお前は矢印でも神父でもないわけだから教示することもありえないだろ。
授けるという言葉だけが特別扱いされるものじゃない。
390:デフォルトの名無しさん
12/12/24 16:13:37.26
質問者は自ら敬語を使い下手に出ている。
これは回答者が上で質問者が下の上下関係。
391:デフォルトの名無しさん
12/12/24 16:15:24.90
バイクシェッドだね
392:デフォルトの名無しさん
12/12/24 16:20:47.40
>>389
日本語不自由なら引っ込んでなよ。矢印でも神父じゃなくても示すことはできる。
示す:
考え・気持ち・反応などが相手に伝わるように、何かの方法で表して見せる。
「誠意を―・す」「態度で―・す」「格段の進歩を―・す」
393:デフォルトの名無しさん
12/12/24 16:25:11.33
教授・教示の議論なんか今まで何度もも目にしたが
上下関係の有無を理由に誤用と主張してるやつは初めて見たわ
394:デフォルトの名無しさん
12/12/24 16:40:28.58
>>392
それは示せってときだろ。お前は答えを示せと言われたらそれに
答えることができるが、上下の関係がないことを理由に教授という
ことがありえないという立場なのだから、ご教示頂きたいと言われた
ときには敬われる立場、高位の立場にないから答えられないということになる。
395:デフォルトの名無しさん
12/12/24 16:48:01.83
>>369のネトウヨさんの調査結果が全てだ。
> きょう‐じゅ〔ケウ‐〕【教授】 [名](スル)
> 1 学問や技芸を教え授けること。「書道を―する」
すなわち、「ご教示下さい」でも「ご教授下さい」でも可。人称云々も上下関係云々もこじつけ。
お前等あんまりネラー用法を増やすなよ。広辞苑がまた軽薄に採用してしまうだろう。
396:デフォルトの名無しさん
12/12/24 16:54:10.15
ちょっと宿題解いてくれってのは、「学問や技芸」を教え授けるのとはちがうだろ
397:桃白白
12/12/24 17:00:11.30
>>396
プログラムの書き方を教えてくれってんだから情報技術という学問の分野であり
完全にテクニカル。そんなのは解釈次第でどうにでもなるわけで、わざわざ
あてはまらない解釈の仕方をするのがおかしい。桃白白はそれがおかしいと思うの。
398:デフォルトの名無しさん
12/12/24 17:01:17.99
萌えた
399:デフォルトの名無しさん
12/12/24 17:09:55.17
チェンジニアには技術の価値なんて分からないよ
400:デフォルトの名無しさん
12/12/24 17:23:20.52
>>395
そこに書かれている通りだ。
単に「学問や技芸を教えること」ではなく「学問や技芸を教え授けること」
授けるとは前に引用した通りに上下関係が存在する。
チョンやチャンコロにはわからないだろうが。
401:デフォルトの名無しさん
12/12/24 17:24:26.18
まだやってんのかwww
402:桃白白
12/12/24 18:26:59.58
>>364
ほい。俺のことはパイパイ教授と呼べ。
URLリンク(ideone.com)
403:デフォルトの名無しさん
12/12/24 18:29:09.04
篠沢教授に全部
404:デフォルトの名無しさん
12/12/24 18:34:33.91
政治スレから逃げてきた奴は、言葉に噛み付くくらいしか出来ないが、
悲しいことに日本語嫌いだから残念な結果に。
405:デフォルトの名無しさん
12/12/24 19:04:30.02
自分の投げた柱に飛び乗って移動するって物理的に可能なんですか
406:デフォルトの名無しさん
12/12/24 20:01:40.35
それが地球上なのか月面なのか
はたまた宇宙空間なのか
物理的に……と問うには
そこまで要件を指定せねば無意味
あとは自分が柱を投げて
誰が移動するのか
何が移動するのか
その他のこまごまとした要件を誤解のなきよう定義せねば
一切の発言は無意味
さらには物理的に可能という言葉の詳しい意味も
明確に説明せねば無意味
407:デフォルトの名無しさん
12/12/24 20:12:48.37
>>327
ありがとうございます。OpenAL がデフォルトで入っている様なので
SDL ではなく OpenAL について調べてみることにしました。
408:デフォルトの名無しさん
12/12/24 20:48:52.61
いえいえ
409:デフォルトの名無しさん
12/12/25 00:10:56.99
プログラム作るのまじで適性ない
就職は全く関係ない業種にしたいんだが
だめかな?もうプログラムは勉強したが上手くいかないことが
多すぎて自殺したいほど疲れた。
410:デフォルトの名無しさん
12/12/25 00:19:00.76
がんばれがんばれ
がんばればなんだってできる
にんげんの可能性は無限だ
がんばりが人間の力だ
最後の最後までがんばることが肝心だ
がんばった先に素晴らしいことがまっている
がんばることこそ人間の証だ
とにかくがんばれ
がんばってみろ
411:デフォルトの名無しさん
12/12/25 00:20:17.80
>>409
適正がないというほどやったのか?
学校の勉強程度じゃ
412:デフォルトの名無しさん
12/12/25 00:27:32.54
さっさと自殺しろってレスが多いと思いきや
>>410
>>411
ありがとう!
とにかくプログラム作って達成感なり感じれるようになったら
孤独とか不安ってのは無くなりますかね?
社会に活かせなくてもいいけど金にならなくていいけど
精神的に満たされたい
413:デフォルトの名無しさん
12/12/25 00:41:20.99
うん
414:デフォルトの名無しさん
12/12/25 00:55:05.98
自分の作ったプログラムを我が子のように感じる人もいるそうだな。
何か分かる気がするわ。
415:デフォルトの名無しさん
12/12/25 01:08:18.92
ほとんど大きいミスしないプログラマっているらしいな
逆にミスする奴は死ぬほどするっていう
情熱大陸に出てた奴はミス少ないらしい
適性があると心は満たされるだろうなぁ
416:デフォルトの名無しさん
12/12/25 01:13:23.17
10回間違う奴か1回しか間違わない奴のどれか
間は無いんだよなぁ
417:デフォルトの名無しさん
12/12/25 01:25:57.26
間違ったっていいんだよ、リリース前までに発覚すれば
間違ったっていいんだよ、同じ間違いを繰り返さなければ
418:デフォルトの名無しさん
12/12/25 10:05:26.60
ミスの影響の大小は条件が同じならば単なる運。
419:デフォルトの名無しさん
12/12/25 10:43:54.14
運だね
420:デフォルトの名無しさん
12/12/25 12:41:42.31
>>13,110,217,225,246,252,290,293,355,363,419
なんだか妖怪っぽい
421:デフォルトの名無しさん
12/12/25 12:43:52.98
そうだね
422:デフォルトの名無しさん
12/12/25 12:47:34.04
「妖怪っぽいね」って言って欲しかった
423:デフォルトの名無しさん
12/12/25 14:30:44.05
やだね
424:デフォルトの名無しさん
12/12/26 00:55:07.38
俺はコード書くだけでエクスタシー感じるから天職なのだろうか
425:デフォルトの名無しさん
12/12/26 01:05:57.77
指示されたフローに黙々とエラー対処を埋め込めるドカタ気質が有るなら天職だね
426:デフォルトの名無しさん
12/12/26 05:22:39.12
>>417
一見、優しそうにみえる、酷い言葉
427:デフォルトの名無しさん
12/12/26 06:39:52.78
>>412
プログラマの一部は宗教から入るため、必然的に不安や孤独感が無くなります。
428:デフォルトの名無しさん
12/12/28 13:23:47.27
すいません。
あるRGBの色と、別のRGBの色とがどのくらい近似しているか、
ということを評価したいんですが、どういう計算結果を評価するのがベストですか?
3次元上の2点間距離を求める公式に、R,G,Bを当てはめるというのは考えましたが、
それ以外にもっと良い方法はありますでしょうか。
429:デフォルトの名無しさん
12/12/28 16:40:43.94
>>428
つ色空間URLリンク(ja.wikipedia.org)
つ均等色空間・L*a*b*表色系 「シーラブ」URLリンク(ja.wikipedia.org)
もっとも単純な変換公式は定義できないように読める。
色とは、所詮人間のもつ3種の視細胞(錐体細胞)の刺激量の組み合わせでしかなく、色空間はそれら刺激量を数値化したものとして定義するのが本義だから、のようだ‥‥
たしかに困った、宿題 スレリンク(tech板:447番)ができるとおもったのだけど。
430:デフォルトの名無しさん
12/12/28 16:51:19.25
RGB(50a000)を、RGB(009700)とRGB(8b7300)の近いほうの色で置き換えようと思ったら、
3次元上の2点間距離の公式に当てはめると、
RGB(50a000)とRGB(009700)は、sqrt(6481)に、
RGB(50a000)とRGB(8b7300)は、sqrt(5506)になって、
後者の方が似た色と判定されてしまいますが、
実際の色を見てもらえれば明らかですが、前者の方が近いです。
どうしたらいいですか
431:デフォルトの名無しさん
12/12/28 17:21:48.42
だから別の色空間に変換してから距離を決定する
432:デフォルトの名無しさん
12/12/28 18:01:45.78
どの色空間が一番いいんすか
とりあえずYUBに変換してから、3次元上の2点間距離を求める公式に
YUBを当てはめてやってみましたが、RBGよりかはよくなりましたが、まだいまいちです。
433:デフォルトの名無しさん
12/12/28 18:02:35.86
×YUB
○YUV
434:デフォルトの名無しさん
12/12/28 19:14:09.52
色相が近いのを選ぶようにしたら?
435:デフォルトの名無しさん
12/12/28 19:25:35.85
HSVだは
436:デフォルトの名無しさん
12/12/28 20:11:03.51
ライブラリの静的リンクと動的リンクがよく分かりません
動的リンクは実行時に読み込むもので、静的リンクは実行ファイルに既に含まれているものって解釈でいいですか?
例えばC言語で使うstdio.hはコンパイル時には必要だけど実行時には必要ないので静的リンクですか?
phpなどの言語でincludeしてるのは動的リンクでしょうか。
stdio.hのライセンスを見たらLGPLで、LGPLは動的リンクの時だけ派生ソフトと見なさないらしいので
stdio.hをincludeしてるプログラムは全てLGPLライセンスに従って公開する必要があるのですか?
よろしくお願いします
437:デフォルトの名無しさん
12/12/28 20:24:28.67
.Hファイルはリンクとまったく関係ありません
438:デフォルトの名無しさん
12/12/28 20:32:30.49
僕の解釈だと.hが静的リンクっぽく感じるんですが、どこが間違っているんでしょう?
439:デフォルトの名無しさん
12/12/28 20:37:35.10
includeはプリプロセス
440:デフォルトの名無しさん
12/12/28 20:45:32.02
距離*(判断(オマエ or 拾って来た)基準になるz値)
441:デフォルトの名無しさん
12/12/28 21:21:38.15
>>436
Cコンパイラの仕組みっていうのは
1.プリプロセッサ(.hファイルの読み込みとマクロ展開)
2.コンパイル(.cファイルを.objに変換)
3.リンク(.objファイルを実行形式にリンク)
という仕組みになっている。.hファイルはコンパイル以前に
展開されるものだからリンクには関係ない。
スタティックリンクはライブラリに含まれる.objファイルを
リンク時に実行形式に含めるもの。
ダイナミックリンクはライブラリに含まれる.objファイルを
実行時に読み込むもの。
442:デフォルトの名無しさん
12/12/28 21:31:36.13
えっ?
443:デフォルトの名無しさん
12/12/28 21:35:43.30
>>436
ライブラリの実態はobjファイル
コンパイルした時に一緒にするのが静的リンク
実行するときだけ一緒になるのが動的リンク
速度は静的リンクに分があって
メモリ効率や差し替えには動的リンクに分がある
嫁=静的リンク
セフレ=動的リンク
444: ◆QZaw55cn4c
12/12/28 22:57:08.11
でもライブラリとオブジェクトファイルはやっぱり区別したくなるよね。
445:デフォルトの名無しさん
12/12/28 23:21:28.17
ここみると…自分もはじめとっつきにくい部分ではあるよね
ライブラリとかコンパイルやリンクの概念。
446:デフォルトの名無しさん
12/12/28 23:32:51.57
手動で.EXE/実行ファイル、.OBJ/.LIB/.o、.DLL/.so の各ファイルを一通り作ってみて使ってみればわかるじゃない
447:デフォルトの名無しさん
12/12/28 23:35:28.86
>>446
自分でやれ
448:デフォルトの名無しさん
12/12/28 23:36:09.21
>>447
バイナリエディタで機械語でも入力してろカス
449:デフォルトの名無しさん
12/12/28 23:43:22.51
>>447
自分でやったよ?
450:デフォルトの名無しさん
12/12/29 05:40:16.07
cygwinでコンパイルすると95%くらいの確率で
なんかだらだらと文章がでてやっとコンパイルされるんだが、
これ表示させないようにする方法とかあるのか?
だらだらとでる文章は
[main] gcc~とか[main] gcc-4~
とか長々としたもの。
警告文とかではない。
451:デフォルトの名無しさん
12/12/29 07:48:49.99
>>450
そのメッセージを貼ってみ
452: ◆QZaw55cn4c
12/12/29 09:35:45.69
それって g++ のテンプレート関係じゃない?たしかにアレはまったく持って意味不明というか
それはそうと gcc4 から specs はなくなったそうで、じゃ、だれが -v をデフォルトオプションにふくませたんだろうね
453:デフォルトの名無しさん
12/12/29 09:37:40.77
釣り質問なので晴れませ~んwwwww
454:デフォルトの名無しさん
12/12/29 15:47:47.06
0 [main] collect2 6904 fhandler_disk_file::fixup_mmap_after_fork: requeste
d 0xFFE90000 != 0x0 mem alloc base 0x0, state 0x10000, size 65536, Win32 error 4 87
347 [main] collect2 6904 C:\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\collect2.exe
: *** fatal error in forked process - recreate_mmaps_after_fork_failed
>>450だけど、こんなかんじだ。
けせないのかこれは?
455:デフォルトの名無しさん
12/12/29 17:25:40.50
ファイルをストリームであつかうのはなぜなんでしょうか
ランダムアクセスなシーケンスですよね
ネットワークやパンチカードなら順次送られてくる流れという見方がしっくりくるのもわかります
でも現代的なファイルまでストリームでやる意味は無いと思います
456:デフォルトの名無しさん
12/12/29 17:41:19.57
現代的なファイルってのは
ひとつ10GBとか50GBあるファイルのことか?
457:デフォルトの名無しさん
12/12/29 22:18:49.67
>>455
意味がないと思うなら、勝手に止めればいいと思う。
ただし、その考えを他人に押しつけるのだけは勘弁してくれ。
458: ◆QZaw55cn4c
12/12/29 22:31:44.52
>>455
別にランダムアクセスしたければいかようにもできるし、でもランダムアクセスって固定長前提の様な気がするんですけど、固定長って今でも現役なんでしょうか?>プロの方
459:デフォルトの名無しさん
12/12/29 23:01:31.93
mallocでポインタのポインタを作って、それを関数に引数として渡した後、どこでfreeをするのが正解ですか?
460:デフォルトの名無しさん
12/12/29 23:11:07.91
まずはお前はどこが政界だと思っているんだ
それを書けよ
461:デフォルトの名無しさん
12/12/29 23:15:23.73
使い終わったらすればよい
その後すぐ終わるプログラムならいちいちしなくていいよ
462:デフォルトの名無しさん
12/12/29 23:51:00.70
>>459
呼び元でmallocするなら呼び元でfree、呼び先でmallocするなら、解放用の関数作ってそこでfreeさせるようにしている。
463:デフォルトの名無しさん
12/12/30 00:12:14.87
>>459
main以外★mallocの後にfree不要と言うバカいるの?
スレリンク(tech板)
464:デフォルトの名無しさん
12/12/30 10:42:14.45
>>459
基本的にはmallocしているところと対称の位置でfreeするよう考えながらプログラムするといい。
例:
ブロックの最初でmallocして、最後でfreeする。
for () {
p = malloc();
...
free(p);
}
最後に利用したところでfreeするという方法もあるが、ダングリングポインタが
発生する可能性があがるのでお勧めしない。
465:デフォルトの名無しさん
12/12/30 12:02:41.28
途中でリターンしたいやろうが
466:デフォルトの名無しさん
12/12/30 13:18:03.61
そういうつまらない突込みしているキミが基本を外すのは10年早い。
467: ◆QZaw55cn4c
12/12/30 13:22:56.91
>>464
その作法はwin32apiでも(一様ですが)仮定されているので、それはそれで一つのやり方だとは思うですが、それを守っていると正直つらいときがあります。
(くどくど言い訳16行を省略)
もうBoemGCでいいんじゃないですかー
468:デフォルトの名無しさん
12/12/30 13:25:11.94
お前はレス禁止。うんこスレに引っ込んでろ。
469:デフォルトの名無しさん
12/12/30 14:02:07.61
今日日、win32apiを叩かないとダメな仕事って何だろう
470:デフォルトの名無しさん
12/12/30 14:04:40.87
>>459
Foo** make_foo()
void delete_foo(Foo** foo)
のように領域を確保する関数、関数型マクロを用意する
471:デフォルトの名無しさん
12/12/30 14:44:05.14
仕様ですが
安倍内閣は危ない核
472:デフォルトの名無しさん
12/12/30 17:54:23.82
一様じゃなく一応でしょ
473:桃白白
12/12/30 19:48:47.81
バイナリツリーの実装について教えてください。
URLリンク(uploda.cc)
バイナリツリーに値が画像のように存在するときに再帰を使わずにこの形式で出力したいです。
6
5
4
3
2
1
0
書いたコードはこれです。このTree_dumpをどのように実装したらいいのか教えてください。
桃白白困ってます。教えてください。お願いします。
URLリンク(ideone.com)
474:デフォルトの名無しさん
12/12/30 20:19:45.14
LIFOつくって退避する。
チンカスが寄ってくるから続きはうんこスレでやれ。
475:桃白白
12/12/30 20:38:38.59
>>474
えーわかんなーい、桃白白そんな適当な説明じゃわかんなーい。
LIFOてスタックでいんでしょ。スタックをどう使うの? そこんとこ教えて。
476:デフォルトの名無しさん
12/12/30 20:53:27.63
push 3
push 5
push 6
if(行き止まり) pop & print // 6
戻った pop & print // 5
push 4
if(行き止まり) pop & print // 4
戻った pop & print // 3
push 1
push 2
if(行き止まり) pop & print // 2
戻った pop & print // 1
push 0
if(行き止まり) pop & print // 0
という感じかな
477:デフォルトの名無しさん
12/12/30 21:50:24.28
動作の正しさは保証しない
URLリンク(ideone.com)
478:デフォルトの名無しさん
12/12/30 22:16:42.77
> 再帰を使わずに
> 再帰を使わずに
> 再帰を使わずに
> 再帰を使わずに
お題も理解せずにドヤ顔でウンコードを張り付けるバカってなんなの?
479:桃白白
12/12/30 23:17:03.74
>>476
見た。桃白白いま考えてる。超考えてる。
>>477
桃白白、スタックオーバフローが超怖いから再帰しないやりかたを知りたいの。
480:デフォルトの名無しさん
12/12/31 00:05:28.96
>>479
再帰関数を自作スタックを使うように書き換えるだけでよくね?
基礎だからググればサンプルも山ほど見つかるんじゃね?
481: ◆QZaw55cn4c
12/12/31 00:08:51.11
>>479
>スタックオーバフローが超怖いから
平衡二分木が現実的かと
昔は同じくスタックオーバーフローが超怖いので非再帰にこだわっていたこともありましたソースが発掘できたらあげます
482: ◆QZaw55cn4c
12/12/31 00:11:12.94
>>474
hello, world!
483: ◆QZaw55cn4c
12/12/31 00:19:50.61
>>479
みつけた、あげる
URLリンク(codepad.org)
484:桃白白
12/12/31 02:19:23.24
>>476
できたー、やったー、あけおめー。ありがとうございました。
URLリンク(ideone.com)
状態変数を使って右をたどっているのか左をたどっているのか
わけるようにした。
485:桃白白
12/12/31 02:40:30.37
>>483
もらう。gotoでできちゃうわけ、gotoすげー半端ねー。
平行二分探索木はバランスとっちゃうやつね、知ってる。
486: ◆QZaw55cn4c
12/12/31 02:51:27.55
>>485
いや、これは struct Node に作業用変数を設け、巡回時(int lib_output(struct Lib_node *p, int (*out_f)(void *)))に戻り位置を記録しておくもの。
これといった必要性もなく goto を使ってしまったと思っています。いずれにせよ当時は二分木の危険性を過大視しておりました。DOSだったし。
487:桃白白
12/12/31 06:37:12.05
状態変数もいらないのか。インデントしなければこれでできちゃうな。
void a(Stack s, Node n) {
while (n != NULL) {
Stack_push(s, n);
n = n->right;
}
}
void Tree_dump(Tree tree) {
Stack s;
Node n;
s = malloc(sizeof(struct Stack));
a(s, tree->root);
while (s->root != NULL) {
n = Stack_pop(s);
printf("%d\n", n->value);
a(s, n->left);
}
free(s);
}
488:デフォルトの名無しさん
12/12/31 07:40:53.44
--
Stack s;
s = malloc(sizeof(struct Stack));
--
腐ってやがる。
489:桃白白
12/12/31 08:02:57.83
>>488
____
/ \
/ _ノ ヽ、_ \ そんなこと言われても
/ (●) (●) \ 桃白白どうすりゃいいのさ
| (__人__) |
\ ` ⌒´ /
/´ `\
/ / l l .
__l l_.[] _____/_/__
\, ´-'ヽ
ヾ_ノ
|
|
|__ コロ・・・・
_____\ コロ・・・・
()__)」
490:デフォルトの名無しさん
12/12/31 08:04:52.91
s が NULL かどうかチェックしろ、ということでは?
実質的にいるのか?
491:デフォルトの名無しさん
12/12/31 08:26:14.48
typedef struct Hoge *Hoge って気持ち悪くない?
492:デフォルトの名無しさん
12/12/31 09:30:14.89
>>489
今すぐ、死ねばいいよ。↓これも
> Tree tree = malloc(sizeof(struct Tree));
> Tree_add(tree, 3);
493:デフォルトの名無しさん
12/12/31 09:30:30.12
うん
494:桃白白
12/12/31 09:48:02.55
>>492
なんでー? 意味わかんなーい。
495:デフォルトの名無しさん
12/12/31 09:50:30.28
mallocの戻り値はポインタだけど
struct Treeとかstruct Stackはポインタなの?
ポインタだとするとmallocの引数がポインタのサイズになってておかしいよ
496:デフォルトの名無しさん
12/12/31 09:53:02.77
あ、ちゃんと読めてなかったtypedefしたのとstructのままので分けてるのか
気にせんといてー
497:デフォルトの名無しさん
12/12/31 10:03:11.04
>>494
お前を含めて、わからないバカ共は死んだ方がいい。
死ぬのがいやならウンコスレでウンコこねて遊んでろ。出てくるな。
498:デフォルトの名無しさん
12/12/31 10:26:26.81
>>491
typedefしないと、変数を定義する際にイチイチstructって書かないとダメだろ
>>494
Tree make_tree(){ return (Tree)malloc(sizeof(struct Tree)); }
free_tree(Tree *tree){ free(tree); }
499:デフォルトの名無しさん
12/12/31 10:28:37.81
vipのAAって久々に見たけど、他人をイラだたせるのにスゴク効果的だな
500:デフォルトの名無しさん
12/12/31 10:37:33.69
> typedefしないと、変数を定義する際にイチイチstructって書かないとダメだろ
お前もバカだな。そういう意味じゃない。
501:デフォルトの名無しさん
12/12/31 10:39:12.44
>>498
typedefすること自体に文句つけてると思ったのかよw
502:デフォルトの名無しさん
12/12/31 10:42:41.43
>>498
お前破壊的にバカ。こんなバカ久しぶりに見た。そういう事じゃない。www
> >>494
> Tree make_tree(){ return (Tree)malloc(sizeof(struct Tree)); }
> free_tree(Tree *tree){ free(tree); }
503:デフォルトの名無しさん
12/12/31 15:20:00.79
動的二次元配列を0で初期化したいのですがfor
でまわす以外に方法ってなにかあるのでしょうか??
504:デフォルトの名無しさん
12/12/31 15:23:36.68
calloc
505:デフォルトの名無しさん
12/12/31 15:28:00.37
>>503
memset
506:デフォルトの名無しさん
12/12/31 16:02:31.09
優しい奴が多いな。
507:デフォルトの名無しさん
12/12/31 17:02:34.81
エディタ何使って開発してますかー
VisualStudioはどうでもいいので、回答しなくて結構ですよ
508:デフォルトの名無しさん
12/12/31 17:03:23.74
>>502
他人を煽りたいだけだろ
509:デフォルトの名無しさん
12/12/31 17:04:23.68
>>507
emacs,vim
この話終わり
510:デフォルトの名無しさん
12/12/31 17:13:13.38
>>508
微妙に違う。PGの適性の無いバカを煽ってるだけ。
おい、白白。おまえがクソコード撒餌したおかげで記録的なバカが釣れたぞ。
反省文書け。
511:デフォルトの名無しさん
12/12/31 17:19:40.07
>>504
>>505
ありがとうございます
512:デフォルトの名無しさん
12/12/31 17:20:47.70
>>507
漢は黙ってcat
513:デフォルトの名無しさん
12/12/31 17:23:45.87
>>510
>>492の解説は?
514:デフォルトの名無しさん
12/12/31 17:32:31.81
ああ、>>488から>>497までか
515:デフォルトの名無しさん
12/12/31 17:39:19.61
>>488と>>492は別人だ。
解説が必要なバカも同罪。わかるまで考えて遺書か辞表か反省文書け。
しかもおせっかいな通りすがりがヒント出してるのに。
516:デフォルトの名無しさん
12/12/31 17:43:23.85
malloc,freeの直書きが気持ち悪くてつい
517:デフォルトの名無しさん
12/12/31 17:46:09.12
優越感に浸っちゃってるつもりなんだろうな、かわいそうな人
518:デフォルトの名無しさん
12/12/31 17:46:12.29
その程度じゃ「PGの適性が無いバカ」とまでは罵らねーよ。
519:デフォルトの名無しさん
12/12/31 17:46:49.60
普通は関数マクロでメモリ取るよね?
520:デフォルトの名無しさん
12/12/31 17:49:13.17
>>517
適性の無いバカは哀れだねえ。気づいて無いのは白白と>>498の二人だけだろうな。
521:デフォルトの名無しさん
12/12/31 17:50:26.77
日常的にcなんて触るもんじゃないし
522:デフォルトの名無しさん
12/12/31 17:50:50.42
具体的に書けないのは、指摘され返されたら面目丸つぶれだからなの?
523:デフォルトの名無しさん
12/12/31 17:52:12.74
三人ぐらい居てカオス
524:デフォルトの名無しさん
12/12/31 17:52:17.78
>>518
まず罵ろうというのがおかしくね?
幼少時代になんかあったの?
525:デフォルトの名無しさん
12/12/31 17:54:54.79
だいたいみんな、興味を持ち出して、BSD付属のコマンドを覗いたぐらいから、
大学を卒業してM$AccessやPHPで仕事をする
526:デフォルトの名無しさん
12/12/31 17:57:08.87
>>524
さあ、なんでだろうね。わからないけどバカみると吐き気がする。
527:デフォルトの名無しさん
12/12/31 17:59:53.30
今日日、cで仕事をしようなんて、大体は幼少時代に何かあった人たち
528:デフォルトの名無しさん
12/12/31 18:01:58.14
typedef struct Hoge *Hoge;ってどっかの流派であるの?
C++に慣れた頭からすると、C++だとstruct HogeはHogeという型名でもアクセスできるから、混乱しそうだなとは思うんだけど。
529:デフォルトの名無しさん
12/12/31 18:04:43.64
cじゃ変数定義するときにstruct付けないとエラー出るよ
gccないの?
530:デフォルトの名無しさん
12/12/31 18:05:11.20
確かに俺も混乱しそうだと思う
初めてパッと見たときに勘違いする
というのはわかるが、>>515には何がダメなのか解説してほしい
typedefが理解できてないだけなんじゃないか?
531:デフォルトの名無しさん
12/12/31 18:21:52.65
はあ? 気持ち悪いtypedefだがそんな事で罵っていない。
>>488は引用が一行足りないので、もしかするとそれで煽ってたのかもしれないが、
>>492みて疑問を持たないバカは死んだ方がいい。
>>492
> Tree tree = malloc(sizeof(struct Tree));
> Tree_add(tree, 3);
532:デフォルトの名無しさん
12/12/31 18:22:19.90
アマチュアはプロジェクトに沿ったコーディング規約を使えば良い
自動車業界なんかだと、MISRA-cなり規格やら検査ツールがあるらしい
きっと、年末年始や土日祝日も開発室に篭って仕事なんだろう
533:デフォルトの名無しさん
12/12/31 18:22:55.93
>>519
どんな普通?
534:デフォルトの名無しさん
12/12/31 18:24:22.45
>>533
BSDなり、メモリ確保するあたり
あんなの幼少時に何かあった人たちだよ
計算機に育てられたか、計算機の中で生まれたか
535:デフォルトの名無しさん
12/12/31 18:25:12.32
レビューの達人を召喚しよう。w
スレリンク(tech板:420番) 出てきて指摘してやれよ。
536:デフォルトの名無しさん
12/12/31 18:29:39.44
>>531
具体的にコードで指摘してみろよ、バーカww
537:デフォルトの名無しさん
12/12/31 18:35:14.00
やなこった。悔しいかバカ。w
538:デフォルトの名無しさん
12/12/31 18:36:47.84
自信がないからできないだけ
539:デフォルトの名無しさん
12/12/31 18:40:32.84
>>533
#define MALLOCしとくとメモリアロケータをごっそり入れ替える事が容易。
ツールキットによっては独自のメモリアロケータ使う事が必要な場合もあるので、
オープンソースな開発ではかなり普通に使われているテクニック。
540:デフォルトの名無しさん
12/12/31 18:44:40.49
>>538
うんこQzが得意とする炎上学習法。ww
「コードコード」と必死に連呼するさまもQzそのもの。
というわけで、修正
> 適性の無いバカは哀れだねえ。気づいて無いのは白白と>>498とバカのQzの三人だけだろうな。
541:デフォルトの名無しさん
12/12/31 18:54:22.84
自 信 が な い の で で き ま せ ん
542:デフォルトの名無しさん
12/12/31 18:56:16.99
悔しそうだな。バカ。
白白が気付いて反省文書くまでまってろ。w
543:デフォルトの名無しさん
12/12/31 18:58:26.12
意訳:自信がないのでできません
544:デフォルトの名無しさん
12/12/31 19:00:02.87
意訳: バカでわからないので教えてください。
545:デフォルトの名無しさん
12/12/31 19:01:36.95
意訳:バカなので答えることができません
546:デフォルトの名無しさん
12/12/31 19:02:33.84
バカなので句点の後に草を生やしてしまいます
547:デフォルトの名無しさん
12/12/31 19:11:35.86
桃白白ってただの無知な初心者だったのか
コテハン使うくらいだからそれなりに骨のある奴かと思ってたわ
548:デフォルトの名無しさん
12/12/31 19:28:40.38
意訳: バカでわからないので教えてください。
549:デフォルトの名無しさん
12/12/31 19:47:40.78
意訳:バカですが恥ずかしいコードを晒すことは何があっても回避します
550:デフォルトの名無しさん
12/12/31 19:51:32.31
意訳: 無知でバカなので>>483のようなウンコードも平気で晒します。
見た瞬間めまいがしてすぐに閉じた。w
551:デフォルトの名無しさん
12/12/31 19:54:38.85
意訳:バカなのでコテハンの存在が疎ましく難癖つけて憂さを晴らします
552:デフォルトの名無しさん
12/12/31 19:56:41.71
バカなので肥溜めに自ら入り込んでしまいます
553:デフォルトの名無しさん
12/12/31 20:03:45.18
バカなのでQzと同じ土俵に立っていることがまるで理解できていません
554: ◆QZaw55cn4c
12/12/31 20:06:13.63
>>550
ごめんね
気づけのお薬あげる、よく利くよ つURLリンク(upload.wikimedia.org)
555:デフォルトの名無しさん
12/12/31 20:31:52.72
Qzじゃ無いとしても、コードコードと騒ぐ炎上学習法を真似て実践するクズだから、
こんな簡単な事も気づけないんだろうな。惨めすぎる。
白白はとっとと反省文書くように。その他のQzを含む気付けないバカ共は遺書を書け。
556:デフォルトの名無しさん
12/12/31 20:36:49.86
自称霊感が強い、なので他の人には見えないものが見えてしまいます
557:デフォルトの名無しさん
12/12/31 20:52:24.83
>>482だけじゃバカにはわからないらしいからもう少しヒントをやろう。
これがおかしいコードだと気づけないバカは年越さずに死ね。
> Tree tree = malloc(sizeof(struct Tree));
> Tree_add(tree, 3);
> Tree_add(tree, 1);
558:デフォルトの名無しさん
12/12/31 20:56:34.63
何でこんなに荒れるんやろねぇ
まぁ何にしろ書き込んでるのはひとりやろけどね
559:デフォルトの名無しさん
12/12/31 21:04:45.51
バカが分をわきまえればいい。
560:デフォルトの名無しさん
12/12/31 21:05:55.30
>>488あたりから自演がひどい
561:デフォルトの名無しさん
12/12/31 21:13:35.26
オレ(>>492)は>>488じゃないわけだが。自演に見えるのはバカの証拠。
でも、教えてもらったらきっと死にたくなるよ。えれー基本的な事だから。
こんなバカどものウンココードで世の中は動いてるんだろうと想像すると
こっちが死にたくなってくるけどな。