[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 06/11 11:18 / Filesize : 195 KB / Number-of Response : 805
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け(入門篇) Part 21



1 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 06:24:18 ]
C言語の入門者向け解説スレです。
・C++言語はスレ違いです。
・分からない事をなるべく詳しく書いて下さい。
・ソースコードを晒すと答えやすくなるかもしれません。
・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

前スレ
C言語なら俺に聞け(入門篇) Part 20
pc11.2ch.net/test/read.cgi/tech/1192455273/

教えて欲しいのではなく丸投げしたいならこちらへ
C/C++の宿題を片付けます 99代目
pc11.2ch.net/test/read.cgi/tech/1194262698/

136 名前:デフォルトの名無しさん [2007/11/11(日) 04:03:45 ]
>>134
レスありがとうございます.
sum += i*i*i;
の下にprintfを入れてみたけど,そこの分のprintfが実行されてなさそう…
ってことは,for自体が実行されてないんですかね?

137 名前:デフォルトの名無しさん [2007/11/11(日) 04:24:04 ]
若干スレ違いかもしれないですが・・・

Borland C++ Compiler 5.5
Borland Turbo Debugger 5.5
BCC Developer
を使ってC言語を勉強してるのですが、最近BCC Developerがよくバグります。
プログラムはちゃんと書けてるのに、いざコマンドプロンプトを開くと「問題が発生したため〜〜を終了します。」
と出てきて、そこで終わってしまいます。
こういうのって開発環境を変えた方が良いんでしょうか??

138 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 05:05:52 ]
コマンドプロンプトを開いて何をしたらそのエラーが出る?
コマンドプロンプトを開くだけで出るならBCCは関係ないが。

139 名前:137 [2007/11/11(日) 05:36:06 ]
>>138
レスありがとうございます。
コマンドプロンプト開くだけなら全然大丈夫なんですが
長時間(っていっても2時間とかそんなもん)プログミングしてるとよくエラーになります。
同じプログラムでもちゃんと出力できるときとそうでないときがあっていまいち原因が分からないです。

140 名前:137 [2007/11/11(日) 06:21:33 ]
ごめんなさい。自己解決できました。


141 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 10:01:08 ]
>>136
そのとーり。>>135も指摘しているが、for文の条件判断のところの意味をよく理解しておくこと。

142 名前:デフォルトの名無しさん [2007/11/11(日) 10:03:44 ]
>>121

>入力波形を正弦波にしてサンプリング周波数の 1/(2^n) にしてもそうなる?

はい。純粋に周波数がf,f1,f2...の正弦波をFFTにかけています。
規格化の方も分かってます。


143 名前:86 [2007/11/11(日) 11:13:09 ]
昨日質問した者ですが、やはり足し算などをすると出力がおかしいみたいです。
このようになるのですが間違っている部分ありますか?
www.imgup.org/iup500370.png
宜しくお願いします。

144 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 11:17:49 ]
>>143
printf("%d\n", d); // & いらない



145 名前:86 mailto:sage [2007/11/11(日) 11:21:45 ]
>>144
昨日も同じレスもらってたのに気付きませんでした…。
今やったらできました。「&」でしたか…
ありがとうございました!!

146 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 11:44:53 ]
市ねよ &d

147 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 11:53:20 ]
>>135 >>141
レスありがとうございました.
forの条件判断は,反復の終了条件ではなく,継続条件なのですね.
つまり,その条件が偽になったら終了と.
つまらない質問に答えていただき,ありがとうございました.

148 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 13:19:24 ]
ちょっと質問させてください。3つの数の最大公約数を
求めるプログラムしてたんですが、下記のこれでもいけますかね?
#include<stdio.h>
#include<stdlib.h>
#define n 3
int main(void
{
int kazu[n];
int i=0, c,num;
while(i < n){
printf("入力 %d < ", i+1);
scanf("%d", &kazu[i]);
i++;
}
for(i=1; i< n; i++){
while(kazu[i] != 0){
c = kazu[i];
kazu[i] = kazu[0] % kazu[i];
kazu[0] = c;
}
}
printf("gcd = %d\n",kazu[0]);

return 0;
}

149 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 15:18:26 ]
被って申し訳ありませんが質問させてください

#include <stdio.h>
#define INPUT_CNT 3
int main(void)
{
int num[INPUT_CNT];
int cnt;
for(cnt = 0 ; cnt < INPUT_CNT ; cnt++)
{
printf("Input number%d : ",cnt+1);
scanf("%d",&num[cnt]);
}
printf("(");
for(cnt = 0 ; cnt < INPUT_CNT ; cnt++)
{
printf("%d +",num[cnt]);
}
printf(")");
printf("\n");
return 0;
}
出力結果
Input number : 10
Input number : 20
Input number : 30
(102030)
↑102030の間に+を表示させるにはどうしたら良いですか?

150 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 15:23:40 ]
初歩的な質問ですみません。
printfの変換仕様のフィールド幅の部分をマクロで
置き換えたいんですが、方法はありますでしょうか?
printf("値: %05d\n", number);
を、
define FIELD 5
printf("値: %0FIELDd\n", number);
といった感じに。(↑上手く動作しません。)↓はコンパイルできませんでした。
printf("値: %0"FIELD"d\n", number);

ちなみに、コンパイラはgccです。よろしくおねがいします。

151 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 15:26:59 ]
>>149
僕がやったところ、下記のような出力結果になってますよ。

Input number1 : 10
Input number2 : 20
Input number3 : 30
(10 +20 +30 +)


152 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 15:27:08 ]
>>150
printf("値: %0*d\n", FIELD, number); でいけたかと

153 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 15:29:56 ]
>>152
いけました!
ありがとうございます!!

154 名前:149 mailto:sage [2007/11/11(日) 16:50:50 ]
>>151
あっそうなんです
どうしても+が一つ多くなってしまうんですが
(10 +20 +30)
こういうすっきりした形にしたいんですが・・・



155 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 16:53:28 ]
for(cnt = 0 ; cnt < INPUT_CNT - 1 ; cnt++) printf("%d +",num[cnt]);
printf("%d", num[cnt]);

156 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 16:53:53 ]
for(cnt = 0 ; cnt < INPUT_CNT ; cnt++)
{
if(cnt>0){ printf(" +"); }
printf("%d",num[cnt]);
}
これでいいんじゃない

157 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 17:18:52 ]
おすすめできないが、こういう書き方も。

for(cnt = 0 ; cnt < INPUT_CNT - 1 ; cnt++)
{
printf("%d + ",num[cnt]);
}
printf("%d",num[cnt]);

158 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 17:21:12 ]
ループの中に無駄な分岐突っ込むよりは、はるかにマシだろ。
まぁ、155が見えないバカにはわからないだろうが。

159 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 18:03:37 ]
VC++2005EE の ^Z の問題は結局どうなったの?


160 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 18:09:45 ]
>>154
もっとおすすめできないが、
return文の2行上のprintf文をこうするとか。
printf("\b)");
\bってのはカーソルを1文字戻すエスケープシーケンスね。

161 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 19:22:26 ]
関数定義で
bool hoge(int array[const])
{
...
}
とやっても良いらしいのだけれど
array[const]ってどういう意味の配列になるの?

162 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 19:26:19 ]
mainから整数型の配列受け取るだけじゃね?って思ったら受け取る時は普通ポインタ使う品

163 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 19:52:40 ]
>>161
bool hoge(int * array)と全く同じ。

>>162
何故main限定?w

>>160
お勧め云々以前にダメすぎ。

164 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:03:14 ]
>>163
bool hoge(int * const array)
というわけでもない?



165 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:07:38 ]
67です
遅くなりましたが、レスさんくすです

>>69
VisualStudioは残念ながら所有していません
ExpressEditionで試してみます

>>71
どうもです
面白そうですね
試してみます

その他にも知り合いのJava使いからOpenGrokなるツールを紹介してもらいました
これらを参考に仕事がんばらせていただきます

どうもありがとうございました

166 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:17:56 ]
>>161>>163
int *const arrayと同じ。
C99から導入された書き方。


167 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:28:30 ]
>>166
サンクス。C99からだったか・・。
どうりでわからんわけだ。C99の資料も欲しい。

168 名前:デフォルトの名無しさん [2007/11/11(日) 20:51:19 ]
コボルはデータを読み込んで演算させて吐き出すことが主ですがC言語はどうですか

また、実務で使われている開発環境はVC++ですか、ボーランドのやつですか
エクリプスですか

169 名前:149 mailto:sage [2007/11/11(日) 21:53:42 ]
「-」を入れると出来るんですね
本当にどうもありがとうございました



170 名前:デフォルトの名無しさん [2007/11/11(日) 21:54:20 ]
一時停止させる関数とそのヘッダファイル教えてください

171 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 21:59:29 ]
何を一時停止?


172 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:00:21 ]
>>170
sleep()でググってみそ。

173 名前:デフォルトの名無しさん [2007/11/11(日) 22:00:35 ]
while(){
printf("hoge");
0.5秒待つ ←これを実行するための関数とヘッダファイルです
}


174 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:02:10 ]
putc(' ', NULL); //stdio.h



175 名前:デフォルトの名無しさん [2007/11/11(日) 22:02:45 ]
>>173
システムに依存する。

176 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:04:58 ]
>>173
windows.h
Sleep(500);

177 名前:173 [2007/11/11(日) 22:06:23 ]
ありがとうございます

178 名前:デフォルトの名無しさん [2007/11/11(日) 22:25:26 ]
>>172
ゲイツに聞こうぜ
あんだけ話題になったんだし
matome.info/HatsuneMikuImageSearch/

179 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:46:32 ]
最近初めたばかりなんですが
int double floatについて教えてください。

int型は整数型ということを調べていてよく見たのですが
int a=0.5 や int b=0.00000005 でもエラーが出ません。
また、範囲が狭いということが書いてあったのですが
int a=1234567890 と大きい値を入れても大丈夫でした。
どれくらい大きい値まで大丈夫なのでしょうか。

それと小数点を扱うときはdouble と floatを使うとあったのですが
二つの違いもよくわかりません

お願いします

180 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:50:35 ]
>>179
www.aso.ecei.tohoku.ac.jp/~yoshi/C/double.html

181 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:52:33 ]
そこには普通floatって書いてあるけど、
実際には理由がなければdoubleを使うのが普通。

182 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:59:55 ]
>>179
浮動小数点なのでfloat
(↑1.1346*10^5とか)
doubleは倍精度(おもに小数部分が)なので

183 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:05:11 ]
stdio.cとかstring.cってどこにあるの?
*.hは/usr/includeにあるけど本体がどこにあるのかわからない。

184 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:05:58 ]
> 倍精度(おもに小数部分が)



185 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:06:52 ]
>>183
検索しても見つからなかったら、インストールされてないんじゃない?

186 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:07:57 ]
>>185
いやトラブルにあったとかそういうことじゃなくて
ソースを読むために居場所を知りたい。

187 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:22:59 ]
>>179
>int a=0.5 や int b=0.00000005 でもエラーが出ません。

エラーは出ないけど、だまって整数に切り捨てられる。

188 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:26:29 ]
エラー出ないのか
Cでもいつもキャストしてるから気づかなかった

189 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:26:36 ]
>>186
いやだから、ライブラリのソースはインストールしてないと入ってない

190 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:26:48 ]
>>186
標準関数のソースは、OSなりコンパイラをインストールするときに、オプションで指定しないと入らないんじゃないの?

なんでもいいから見たいってことなら、ネットで探せば出てくると思うけど。

191 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:27:56 ]
>>186
そんなものない。
ファイルに書き出すにしても、OSのAPI呼び出したりアセンブラで書いたりと
C言語じゃないことやってるんだから、Cのソースファイルとしては存在しない。

192 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:32:11 ]
>>189
>>190
そうなのか、全然知らなかった。
インストールしないといけないのか。thx!

193 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:38:40 ]
>>179
doubleの方がfloatより精度が高い。

だから計算に時間がかかるかといえばそうでもなくて、
CPUに乗ってる数値演算プロセッサが32bit精度だったり、
C言語のライブラリがdouble前提で作られたりしてて、
floatで計算すると、
float-double変換→計算→double-float変換
となってdoubleよりも遅くなることが多かった。

けど、最近はSSEなどの演算命令などが出てきたため、
floatの方が速い場合もあるらしい。


194 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:42:51 ]
ごめん、ウソついた。
FPUは80bitだから、「CPUに…」の行は無視して。



195 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:48:02 ]
179ですが皆さんありがとうございました。
イメージできてきました。

intが8バイトや、256ビットやら、バイトとビットがよくわかってもいない中で
わけがわからなくなっていましたが
精度の違いってこのbitの部分が違うということですよね?

足し算、掛け算やら計算を格納するところはdoubleにしてやるように気をつけます。
ありがとうございました

196 名前:デフォルトの名無しさん [2007/11/12(月) 00:34:47 ]
ランダムに-1.0から1.0までのdouble値を生成するコードを考えてくれたまえ

197 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:40:02 ]
(double)rand() / RAND_MAX * 2 - 1

198 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:43:52 ]
char *ptr = "ghijkl";
が可能で

char *ptr;
scanf("%s",ptr);
がダメなのはなんで?

199 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:46:55 ]
>>198
char *ptr = "ghijkl";
は、コンパイラがどっかに用意した"ghijkl"って領域の
先頭アドレスをptrに代入してる。だからOK

char *ptr;
はptrってポインタ(アドレスを入れる箱)は用意したけど、まだ中身は不定。
文字列を入れる場所が確保されてないから、コピーできない。

200 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:47:28 ]
そのポインタは確保された領域を指していないから

201 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:50:22 ]
char *ptr;
scanf("%s",ptr);
を可能にするにはmallocやnewやらで領域作らないとダメなの?

それだと
char ptr[256];
scanf("%s",ptr);
でやってしまっても問題ないなぁ…

なんか領域が可変な1次元のcharでもあればいいのに

202 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:52:16 ]
>>201
標準ではないが asprintf が便利

203 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:56:39 ]
>>201
C言語スレだからnewは無いけどな。
char* ptr=(char*)malloc(256);
みたいにしないといけない。使い終わったらfreeもしなきゃいけない。

可変配列なんて裏でメモリの確保・開放を勝手にやるってことだからな。
高級アセンブラたるCにそんな機能は無い。必要なら自分で作るんだよ。

204 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 01:05:46 ]
C言語スレだから、C++は違うのですね。すんません。
理解できました




205 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 01:12:22 ]
配列と要素数と確保開放を一括で管理するオブジェクトでも作ればいいんじゃね?

206 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 01:24:49 ]
おぶじぇくとがよくわかってないなぁ。

「関数がついた構造体」みたいな感じで認識してるけど
オブジェクトに何か値をぶち込む。

何かよくわからないけど、いろいろ処理する(コンストラクタやらデストラクタやらして)

何か処理したもんが出てくる

って認識であってる?

207 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 01:26:50 ]
>>206
スレ違い。

208 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 01:33:40 ]
構造体配列struct tfield data[10]で
メンバをchar word[20] として

そのメンバとaとかbと一致するかどうかをみたいんだけど
どうすればいいですかね?

209 名前:抽象的な質問には抽象的な回答を mailto:sage [2007/11/12(月) 01:36:15 ]
比較すればいいと思います。

210 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 02:04:01 ]
#include <stdio.h>
#include <math.h>
int main(void){
long double r,pi,t;

r=2.859492;
pi=3.141590;
r=pow(r,3);
t=4/3*pi*r;

printf("%f",t);

return 0;
}

>>> -0.0000 になってしまいます。

211 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 02:44:49 ]
long double は %Lf

212 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 02:54:39 ]
ありがとございます。


213 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 03:54:55 ]
C言語系で就職に役に立つ資格ってありますかね?


214 名前:デフォルトの名無しさん [2007/11/12(月) 04:34:24 ]
>>197
MT法でやってくりたまえ



215 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 09:20:48 ]
>>213
基本情報処理でいいんじゃないの?

216 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 10:27:21 ]
メモリエディタ製作しようとしているが
こんな感じでおk?

目標プロセスのアドレス取得

ある数値、文字列を探すときはstrstrで検索


217 名前:抽象的な質問には抽象的な回答を mailto:sage [2007/11/12(月) 10:38:56 ]
ダメ。数値を探すのにstrstr()は使えない。

218 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 12:43:52 ]
画像の指定した範囲を切り出して出力するプログラムはどうやりますか?

219 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 12:57:08 ]
出番だぞ抽象

220 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 13:07:34 ]
pythonでやれ

221 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 13:40:24 ]
画像解読か。難しそうだな。
文字で書いてあればまだなんとかなるか。

222 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 13:43:42 ]
まず、irfan viewをDLします
ヒントはPPM

がんばれよ!

223 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 13:56:06 ]
>>218
何を切り出すの?
金型?

224 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 14:40:09 ]
phpでも使っとけ。



225 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 15:38:25 ]
WAVEファイルを読み込む

テキストデータに変換

0.5秒間ハミング窓を与える      ←
↓                          0.25秒ずらす
FFT、ピッチを求めてドッカに保存    →      ↑

終了

こんな感じで求めればドレミファソラシドって変化していくWAVEファイルのピッチを追えると思ってるんだが
どう?

226 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:00:23 ]
size_tとかFILEみたいになんか知ってるとそれなりに
それなりのC言語の使い手に一見見える型とか構造体ってありますか?

227 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:04:06 ]
FILEは違うだろ・・・

228 名前:デフォルトの名無しさん [2007/11/12(月) 18:04:54 ]
void*

229 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:13:43 ]
LPCWSTR

230 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:14:52 ]
char const* const p;

231 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:16:46 ]
strct hoge{
・・・
・・・
char ar[1]; //[0]じゃなくあえて[1]で。
};


232 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:18:50 ]
int main(argc, argv)
int argc;
char **argv;
{
return 0;
}


233 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:20:30 ]
#define begin {
#define end ;}


234 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:25:55 ]
size_t
ptrdiff_t
intptr_t
uintptr_t



235 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 18:49:39 ]
うわぁ予想外にいっぱいあるんですね。
>>231
[0]じゃなくてあえて[1]で。ってどういうことなんですか
すごく興味があります。

236 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 19:16:10 ]
struct e{
int value1,value2,value3;
};

void foo(e num[][size]){
e output1[size],output2[size];
double sum1, sum2, sum3;
double difference1,difference2,difference3;
for( i=0;i<size;i++){
for( j=0; j<size; j++){
sum1 = num[i][j].value1 + num[i][j+1].value1;
sum2 = num[i][j].value2 + num[i][j+1].value2;
sum3 = num[i][j].value3 + num[i][j+1].value3;

difference1 = num[i][j*2].value1 - num[i][j*2+1].value1;
difference2 = num[i][j*2].value2 - num[i][j*2+1].value2;
difference3 = num[i][j*2].value3 - num[i][j*2+1].value3;

output1[j].value1 = sum;output1[j].value2 = sum2;output1[j].value3 = sum3;
output2[j].value1 = difference1;output2[j].value2 = difference2;output2[j].value3 = difference3
} // end for j
} // end for i
}

このクソ汚いソースを直すのに、どなたか知恵をお貸しください。
2次元の構造体に3つの変数があって
それの隣接する和と差を求めるものの1部なのですが。

変数が多くなってあまりに汚いのでどうにかできないものかと






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<195KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef