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


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

C言語なら俺に聞け(入門編)Part 114



1 名前:デフォルトの名無しさん [2013/04/22(月) 04:47:19.70 ]
C言語の入門者向け解説スレッドです。

★前スレ
C言語なら俺に聞け(入門編)Part 113
toro.2ch.net/test/read.cgi/tech/1362824689/
★過去スレ
makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
★教えて欲しいのではなく宿題を丸投げしたいだけなら
  ↓宿題スレ↓へ行ってください。
C/C++の宿題片付けます 164代目
toro.2ch.net/test/read.cgi/tech/1364700745/
★C++言語については避けてください。C++対応明記スレへどうぞ。
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
  # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること。
  # サイズが大きい場合はアップローダ等を利用してください。
codepad.org/
ideone.com/
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

280 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 09:38:26.94 ]
ほらやっぱ自演だったろ

281 名前:デフォルトの名無しさん [2013/05/02(木) 13:44:19.46 ]
メモリ確保したポインタを解放した後NULLで初期化する関数myfreeを作りたいのですが、
以下のようにすると初期化されないので

void *myfree(void *p)
{
free(p);
p=NULL;
return;
}

仕方なく以下のようにNULLを返してますが、p = myfree(p)のようになり美しくありません
もっとスマートな方法はないでしょうか?

void *myfree(void *p)
{
free(p);
return NULL;
}

282 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 13:55:17.87 ]
>>281
#include<stdio.h>
#include<stdlib.h>
void *myfree(void **p)
{
free(*p);
*p = NULL;
return NULL;
}
int main()
{
char *p = (char *) malloc(123);
printf("%p\n", p);
p = myfree((void **) &p);
printf("%p\n", p);
return 0;
}

283 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 13:55:31.38 ]
ポインタへのポインタを使う方法じゃだめなの?
void myfree(void** pp)

284 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 13:55:55.12 ]
void myfree(void** p)
{
 free(*p); *p = NULL;
}

呼び出しで &付きになるからキショイ

285 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 13:58:33.76 ]
>>282間違った。

#include<stdio.h>
#include<stdlib.h>
void myfree(void **p)
{
free(*p);
*p = NULL;
}
int main()
{
char *p = (char *) malloc(123);
printf("%p\n", p);
myfree((void **) &p);
printf("%p\n", p);
return 0;
}

キショいね

286 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 14:04:25.21 ]
マクロの
#define MY_FREE(p) do { free(p); p = NULL; } while (0)
これも賛否ありそう

287 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 14:17:53.43 ]
>>283
規格上はダメ、ゼッタイ
voidポインタとそれ以外のポインタは互換性が保証されないので

あー、でも、charポインタと構造体共用体ポインタは互換性があったっけ?
まあ結局intポインタとかはだめだけど

だから、Cならマクロにするしかない
C++ならテンプレートにできるけど

288 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 14:33:07.57 ]
マクロにしなくてもp=free(p),NULL;でいいじゃん?



289 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 14:37:51.26 ]
>>288
>仕方なく以下のようにNULLを返してますが、p = myfree(p)のようになり美しくありません
>もっとスマートな方法はないでしょうか?
って話なので、その案は微妙な線?かな?

290 名前:281 mailto:sage [2013/05/02(木) 14:49:28.70 ]
皆さんどうもありがとうございます
&でポインタへのポインタを使う方法は、自分の環境ではコンパイルエラーになりました
(エラーの正確な内容は失念しましたが、構造体のサイズが不確定というエラーだったような)
関数に渡す時に(void **) でキャストすればエラーが消えるのでしょうか。
しかし>>287さんによると規格上ダメとのことなのでやめておきます

>>288さんの方法は初見でしたが、ポインタ名を二回記述するやり方はポインタ名が長い場合に不便なので1回にしたいのです
マクロを使う方法が一番よさそうなので、試してみます
どうもありがとうございます

291 名前:デフォルトの名無しさん [2013/05/02(木) 15:01:42.15 ]
「規格」ってタームが混ざってるだけで簡単に騙される>>290哀れwwwww

292 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 15:07:24.15 ]
>>291
アホはだまっとけ
www.kouno.jp/home/c_faq/c5/html#17

293 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 15:11:10.51 ]
ミスった
www.kouno.jp/home/c_faq/c5.html#17

294 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 15:19:56.16 ]
投稿前に確認すらできないゴミが「アホはだまっとけ」だってよ
やっぱゴミはゴミだな

295 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 15:30:43.47 ]
何かを実行する前に問題がないかを確認するってのはプログラマなら当たり前の手順なわけだが、
それができていないってことはプログラミングやる資格はないよ。

そしてそんな奴が調子に乗って回答してる。
>>292-293はこのスレのレベルがいかに低いかを身をもって示してくれている。
それでもまだここで質問するのはまともじゃないよ。

296 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 15:31:44.23 ]
そりゃ規格を一番に考えるだろう

297 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 15:42:30.38 ]
>何かを実行する前に問題がないかを確認するってのはプログラマなら当たり前
マでなくとも人間なら普通おおかた>>292は池沼か社会経験のないニートか学生風情

298 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:16:54.81 ]
使い終わったポインタにNULLを入れるのって、ヘタクソの習慣だよな。



299 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:20:21.38 ]
>>298
えっ

300 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:20:47.84 ]
リンクを貼るのってコピペするだけでミスの入り込む余地なんてないと思うんだけど、
携帯とかからわざわざ手打ちで貼ってんの?

301 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:28:55.60 ]
>>300
俺も思ったw
何をどうしたら間違えるんだろうなw

302 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:29:17.63 ]
>>298
それ以前にいちいちfreeすること自体が、設計ができない証。

303 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:30:23.01 ]
規制で携帯から手打ちなんだよ
察しろ

304 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:34:15.61 ]
>>302
いやいやfree()はするだろ。
free()のあとに機械的にNULLクリアするってスタイルはヘタクソ。

305 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:41:17.41 ]
こういうのを真に受ける人がいると思っているのかね
言動からしてレベルの低さが窺えるからスルーしかされないだろうに

306 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:44:30.84 ]
>>304
獲得したメモリをいちいち解放するなんて、
自分でメモリが管理できていない証拠じゃん。
設計ができていれば必要なメモリ量もわかるので
獲得した後解放するなんてありえない。

307 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:46:51.58 ]
ちょっと何言ってるかわかんないです

308 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:51:26.18 ]
がたがた言わずにmallocしちめえ!いらなくなったメモリはそのつどfreeだ!



309 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:53:40.79 ]
>>303
やっぱりそうか

ケータイから手打ちしてまで書き込みたいとか
>>292は自己顕示欲の塊かよw

310 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:54:07.62 ]
まっとうなプロダクツはじゃ、まず見ないスタイルだよね。
free()のあとにNULLクリアをするって規則のコーディング。

311 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 16:58:36.89 ]
まあポインタを使い回す事自体があまり良くはないからな
でも、全うな製品ならそれでもNULLクリアするのが普通だけど

312 名前:デフォルトの名無しさん [2013/05/02(木) 17:01:44.36 ]
うるさいゴミ

313 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:03:09.21 ]
「ヘタクソがいる現場だと有効だ」とか思われてるのかもしれないけど、
たぶん実際的な効果はなにも無いんじゃないのかね > NULLクリア

314 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:05:05.47 ]
NULLクリアしてるまっとうな製品って、どれのことだろ。

315 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:09:05.01 ]
安全性への意識の高さの問題だよ
NULL埋めしない人は経験上他も大体いい加減

316 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:15:52.65 ]
世間的に安定性とか評価されてるプロダクツでもべつにNULLクリアなんてしてないしな。

317 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:16:27.83 ]
安全性への意識て、ミスを根本的になくすことよりミスったときに誤魔化すことを優先すること?

318 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:18:55.52 ]
ポインタがNULLか非NULLかでフラグのような動作をさせるってのは
よくあるテクニックだよ。TLV式のプロトコル実装とか、当たり前のように
使ってるよね。



319 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:19:47.12 ]
free()した直後にポインタ変数の寿命がくるなら
nullクリアなんていらないけど
まだ使う気があるならnull入れておくかな
なんかバグったときにassertにひっかかってくれる

320 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:19:49.18 ]
NULLクリアを自動化しておけばバグが入った時の想定される原因の一つが消えるじゃん

321 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:20:59.00 ]
>>317
ミスを根本的になくすことと同時に
ミスったときにそれを確実に拾えること

可能なら対処する(ごまかす)のは別の話だね

322 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:22:15.95 ]
>>318
そういう話じゃなくて、ルールで機械的に、処理とか文脈とか関係なしにNULLクリアしましょうってのが是か非かって話。

323 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:26:44.74 ]
>>322
そんなの、その場の空気と宗教に従え、以上の答えあるの?
答えが分かったうえで議論の練習したい人とかfj.lang.cごっこしたい人は
別のスレでやってね。ぜんぜん入門編じゃないからね。

324 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:29:30.17 ]
>>323
逃げたwww

325 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:37:47.56 ]
>>322
是でいいと思うよ
ふつうにうしろに処理足される可能性あるし
なによりnull入れて困ることはないってのが
でかい

326 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 17:41:27.29 ]
free 時に 確保領域に書かれてる内容を適当にぶっこわしてくれる機構 がうれしい

ポインタを別変数にコピーしてたテヘッ 用だね

327 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:00:02.46 ]
NULLクリアって定数左と同じようなテクニックに見える

328 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:02:04.79 ]
>>327
それは頭悪いですね



329 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:10:30.05 ]
NULLを入れない場合→破棄後に参照しても動く事がままある
NULLを入れる場合→参照するとほぼ死ぬ

どちらがミスった時に誤魔化すことを優先しているかは一目瞭然
NULLを入れない方だ
NULLを入れない人は想像力が貧困で、プログラムには向いていない

330 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:18:09.46 ]
それ以前にfreeもしないって人は世界が違うんですか?

331 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:19:04.70 ]
おそらく神の領域に達しているのだろう

332 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:19:49.13 ]
>>329
自信がないからバグを必要以上に恐れている。
典型的似非プログラマの特徴。

333 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:21:03.75 ]
俺のプログラムにバグは無い

334 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:21:44.38 ]
>>330
組み込みの世界ではそれが当たり前なことも珍しくない。
malloc/freeがあるとは限らない。

335 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:22:56.61 ]
マルロック

336 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:24:05.60 ]
>>332みたいなのが、なんとなく動くだけの、分かりにくいバグの多いプログラムを量産するんだよな
プログラマが自分を信用しないのなんて常識じゃない

337 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:25:46.63 ]
>>336
プログラムが落ちないと品質を保証できないクズプログラマの典型。

338 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:28:05.34 ]
>>336
いちいちNULL入れる人って、mtraceとか使ってきちんとテストしたことないんだろうな、って思う。



339 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:30:04.45 ]
>>337
とうとう支離滅裂になったか
論理性の欠片もない
プログラマの資格もない

340 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:30:29.65 ]
>>336
プログラムが落ちることを前提にバグとりをする人って、
落ちないバグとりどうしてるの?
NULLだろうがNULLでなかろうが、参照すること自体がバグなのだから
落ちる落ちないってのは、楽をする方法なのであって、品質を確保する
方法でないってのはわかるよね?

341 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:37:46.77 ]
>>340
ただのフェイルセーフに何言ってんの?
何かあった時に検出できるというだけで、
基本お世話にならないようにプログラムするに決まってんじゃん

342 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:45:53.77 ]
NULL入れようが入れまいが、やることは同じ
ただ、NULLを入れた方がバグの検出確率が上がるしデバッグのしやすさも微増するから入れるってだけ
逆に聞くけど、入れないメリットって何よ

343 名前:デフォルトの名無しさん [2013/05/02(木) 18:49:20.40 ]
>>342
空気嫁コミュ障が

344 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:51:56.16 ]
答えは出たみたいだな

345 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:57:50.08 ]
だな
わざわざNULL入れる無駄な処理書いてる奴は給料泥棒
そんなくだらないことに時間使ってザンギョウガーデスマガー

346 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:03:13.40 ]
はたから見てたけど、NULL 入れない人が頭悪そうってことだけは分かった

347 名前:デフォルトの名無しさん [2013/05/02(木) 19:05:22.28 ]
糞リンゴがとうとう社債発行w
どんどん追い詰められていきますなぁw

348 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:12:10.55 ]
ジョブズに影響うけてジョブズ=最先端のIT技術者!!!と思い影響うけてMac買ってた低脳
さっさと死ぬことだなゴミは



349 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:19:50.57 ]
>>279ってどこかクラッキングしてるのか?
通報した方がいいのかな?

350 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:24:55.44 ]
リンゴは株価が大暴落してるって1週間くらい前にニュースになってなかったか?

351 名前: ◆QZaw55cn4c mailto:sage [2013/05/02(木) 19:39:26.40 ]
>>342
入れないメリットなんてないですよね。デバッグが少しでも楽になるのであれば、それが微増あっても入れておきます。いろいろ手を打ってお世話にならないようには心がけますけれどもね。
入れない人って、デバッグでのたうち回ったことのない人なんじゃないかなあ‥‥‥

>>290
>しかし>>287さんによると規格上ダメとのことなのでやめておきます

そんな規格はないと思います。void * から任意のポインタへの代入は、 C であればキャストなしに可能です。
また、自分が何をしているかわかっているのであれば、非void * をキャストして void * に代入することは、よくある手法です。
qsort() を調べてみてください。

>構造体のサイズが不確定というエラーだったような
void * をインクリメントしたりするのは、あまり行儀のよくない、とは C++エキスパートからはよく伺います。ただ、

>>287
C ならば、void * は char * と互換性がある。構造体のポインタが交換可能云々は、要はアラインメントの問題だね。
ISO/IEC 9899:1999 6.2.5.26
A pointer to void shall have the same representation and alignment requirements as a
pointer to a character type.(以下続くが略)

貴様は toro.2ch.net/test/read.cgi/tech/1313183984/ で勉強したまえ。:-)

352 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:47:19.73 ]
>>348
ジョブズはゲイツの次にすごいと思うよ、ITの先端ではね、
だけど自分の会社を、自分がいなくなった後でも存続できるように体制を整えたり、後継者を育てたりってことはできなかったよね
一番起業してはいけないタイプの人間
それじゃ残された社員や株主が可哀想
ゲイツはその点しっかりしている、生きてるうちに身を引いた
これはゲイツがすごいわけじゃなくて当たり前
その当たり前のことができず、チヤホヤされたいがために後継者育てずに新機種連発するゴミクズがジョブズ
技術やアイデアがすごくても残された人間の生活を考えない辺りクズすぎる
総合評価としては世の中に要らないゴミだったよねw

353 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:49:37.52 ]
()

354 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 19:51:06.68 ]
>>351
今はvoid**の話だっつーの!
例えば、int*が4バイトでvoid*が8バイトの時に

int *p;
*(void**)&amp;p = 0;

としたらどうなるか考えれ

355 名前: ◆QZaw55cn4c mailto:sage [2013/05/02(木) 19:59:15.52 ]
>>354
>int*が4バイトでvoid*が8バイトの時に
far/near を思い出しますねえ :−)
int far * near * とか奇天烈なことをやっていた記憶があります‥‥‥すまん

356 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 20:01:59.86 ]
これか。
終わったな。

「ピークから35%下落したアップル株価」の背景
sankei.jp.msn.com/wired/news/130425/wir13042517450001-n1.htm

>デルの現在の価値のおよそ12倍が消え失せた
こんなに企業価値の目減りする企業なんて見たことない。
もう実際のところ瀕死なんじゃね。

357 名前: ◆QZaw55cn4c mailto:sage [2013/05/02(木) 20:21:20.01 ]
iphone5、結構便利に使っているし‥‥
他社のandroidをみると、サイズが大きすぎて片手に入らなくて使いにくそう‥‥
iphone を応援したいなあ、なにか支援する方法はないものか‥‥

obj-C ってむずかしいのですか?

358 名前:デフォルトの名無しさん [2013/05/02(木) 20:27:04.29 ]
ぶっちゃけアップルがなくなっても困らない



359 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 20:45:40.86 ]
>obj-C ってむずかしいのですか?

このクソコテwww
何も成長してねーんだなwww

360 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 20:55:56.04 ]
りんご終了。

361 名前:デフォルトの名無しさん [2013/05/02(木) 20:57:36.90 ]
まだリンゴ製品買うって奴は次のどれか

馬鹿
基地害
池沼
低能
情弱
阿呆

362 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 21:51:57.62 ]
freeのあとNULLをいれるのはお行儀以外にもダブルfree防止なんてのもある。
あと、
お行儀の話でいえば、使い終わったバッファは0クリアしておくなんてのもあるなぁ。
(ヒープだけじゃなく、スタックも対象)

最近はそんなことやってないけどw
本来、秘密情報に対してはやっておかないとまずい。

363 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 21:52:21.59 ]
MSシンパキタコレ

364 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 22:06:54.54 ]
d.hatena.ne.jp/suttanipaata/20110118/1295356596

ここでうまくrootになれません
shに変わるんですが
試行錯誤してます

365 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 22:44:56.56 ]
うああああああああああできたああああああああああああああああああああああ
suid権限あたえてなかたあああああああああああ

366 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 02:15:00.28 ]
>>359
おまえ単に気にくわねぇだけだろw
専門板に感情論は不要なんだが

367 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 04:06:53.57 ]
>>357は普通にスレチ

368 名前:デフォルトの名無しさん [2013/05/03(金) 04:55:58.67 ]
>>366
うるさいゴミ



369 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 11:46:29.37 ]
乱数について分からなくなってしまったのでご教授お願いします。

ゲーム用にある整数域の間でランダムな値を取りたくて、
関数を作っていたんですがなぜか返り値が固定されやがります。
しかもどの乱数に固定されているのか調べようとprintf仕込んだら、
今度は問題なく動いてくれちゃったりしてちんぷんかんぷんです。
できれば返り値を固定したくないのですが、どのようにしたらよいでしょうか?

以下、同じ状況を再現したコード。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int getrandom(int min,int max)
{
//printf("%d\n" , rand()); /* ←ここのコメントはずすと乱数が固定されない */
return ( min + (int)( (rand()/(1.0+RAND_MAX)) * (((double)(max-min)+1.0) ) ) );
}

int main(void) {
srand((unsigned int)time(NULL));
int x = getrandom(0,6);
printf("%d\n" , x);

return 0;
}

370 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 12:10:49.78 ]
そのコードを実行したら固定されなかったから、
書いてない部分のコードでメモリ破壊系のコーディングミスがあるとのエスパーでFA

371 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 12:15:11.79 ]
>>369
乱数種があまり変わらないので、
最初に出てくる乱数にもあまり差がないようだね
線形合同法の乗数が小さいんだと思う

だから、余りを使用する方式だと大丈夫だけど、
1+RAND_MAXで割る方式だとほぼ同じ値になるようだ

最初に数回rand()を呼ぶようにするといいよ
ウォームアップってやつ

372 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 13:00:40.64 ]
>>370
実は2種類くらい実行環境を用意して、
このコードそのまんま試してもダメだったんです・・・orz

>>371
ためしにrand()2回呼び出してみたら乱数の固定がなくなりました。
ウォームアップという発想が無かったので大変助かりました。
ありがとうごさいます。

373 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 13:08:28.68 ]
rand()は鈍いし、質が悪い。
メルセ○○ツイスターとかいうのでいいんでは。

374 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 13:21:55.66 ]
www001.upp.so-net.ne.jp/isaku/rand.html

こういう所で適当なのを拾うのも手だよ

375 名前:デフォルトの名無しさん [2013/05/03(金) 13:53:57.30 ]
>>374みたいなクズが甘やかすから初心者がいつまで経っても初心者の域から脱出できない

376 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 14:05:46.60 ]
>>374
お前がクズ
引っ込んでろ

377 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 14:06:01.89 ]
>>375
間違えた
お前がクズ

378 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 14:29:34.45 ]
おれがクズ

おがクズ



379 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 14:30:54.98 ]
('_')

380 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 15:11:48.44 ]
>>338
それをすり抜けたとき用だろ

381 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 15:21:42.71 ]
すり抜けたときww

382 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 15:43:04.63 ]
typedefをexternできますか

383 名前:デフォルトの名無しさん [2013/05/03(金) 15:53:14.25 ]
>>376-377晒しage

384 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 15:56:23.04 ]
>>383
悔しかったの?

385 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 16:04:33.59 ]
馬鹿だのクズだの、ガキかお前ら

386 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 16:21:09.55 ]
C言語でNOP,シェルコード,偽の戻り値をbufferにコピーした後の動作がよくわかりません
コピー先 buffer[500]
コピー元(argv[1]) 600バイト(NOP,シェルコード,偽の戻り値)
strcpy(buffer,argv[1]);

buffer
sfp
RET
になりbufferが600バイト分超過してsfp,RETが書き換えられますよね?
書き換えられたらどうなるんでしょうか?bufferの一番上からアドレスの中身を実行していくのでしょうか?教えてください

387 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 16:25:41.11 ]
そもそもエリアオーバーでコピーするコードを書く目的がわからん。
どうなるかを知りたいならやってみればいい。

388 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 16:27:00.23 ]
>>386
nopスロープとかウイルス作る気満々じゃねーか
誰が答えてやるか通報すんぞ



389 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 16:31:59.16 ]
マジレスするとx86 x64ならDEP有効で実行されないよ

390 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 16:36:27.89 ]
皆攻撃したくてたまらない

391 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 18:51:05.77 ]
>>389
コンパイルオプションで外せなかったっけか

392 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 18:53:50.31 ]
戻りアドレスをNOPが入ってるアドレスに渡せばいいだけでした
そうすれば戻ったときアドレスが指してるNOPを実行してシェルコードにたどり着くんでした

393 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 19:39:07.01 ]
>>392
ブログでやれ池沼

394 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 20:37:16.76 ]
自己解決の報告をして>>393とな?
そもそもこんなこと聞いている>>392もあれだが。

395 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 20:52:13.36 ]
>>393が池沼

396 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 23:07:08.80 ]
>>362
>使い終わったバッファは0クリアしておくなんてのもあるなぁ。(ヒープだけじゃなく、スタックも対象)
厳密なんですね‥‥輪廻転生されるとやっかいですからね‥‥私は乱数で埋めていました‥‥これはあんまり役にたちそうにないなぁ

397 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 00:57:03.09 ]
>>395
板違いだぞ。
自己紹介は自己紹介板でどうぞ。

398 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 02:01:04.97 ]
たかがC言語でよくこんなに語れるもんだ…きも



399 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 03:46:03.16 ]
>>391
DEPはコントロールパネルの設定だからコンパイルオプションでは
回避不可能。DEPはXP SP2以降(SP3だったかも)に搭載されていて
デフォルトではWindowsの重要なサービスに対してのみ有効。
間抜けな(といっては失礼だが)ユーザのほとんどはDEPの設定など
知らないから、デフォルトのままで使っているはず。そういう間抜けを
出し抜くウィルスぐらいなら作れるだろう。

400 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 08:57:32.49 ]
/NXCOMPAT に対応してないXPを窓から投げ捨てろ

401 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 18:57:22.47 ]
Head First Cという本で勉強しているのですが構造体で詰まりました。
下記のra->width、ra->heightの値は定義していないように見えるのですが
いったいいつ定義しているのでしょうか?

typedef struct{
int width;
int height;
} rectangle;

int compare_areas(const void* a, const void* b)
{
rectangle* ra = (rectangle*)a;
rectangle* rb = (rectangle*)b;

int area_a = ra->width * ra->height;
int area_b = rb->width * rb->height;

return area_a - area_b;
}

int main()
{
int i;
int scores[] = {543, 323, 32, 554, 11, 3, 112};

qsort(scores, 7, sizeof(int), compare_areas);

return 0;
}

402 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 19:03:56.63 ]
rectangle* ra = (rectangle*)a;
rectangle* rb = (rectangle*)b;

ここで既に宣言してる

403 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 19:31:09.06 ]
>>401
何か変なコードだな。
なんで compare_areas(); は int の配列の要素のアドレスを受け取って
それを rectangle と判断して処理しているのだろうか

404 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 19:34:56.61 ]
>>401
ありえんだろこのコードは
写し間違いじゃないのか?

405 名前:401 mailto:sage [2013/05/04(土) 19:43:24.86 ]
>>402-404
返信ありがとうございます。

写し間違いではありません。
内容としては「矩形を面積の小さい順にソートする」というものです。(P330)

あまり良いコードではないようなのでスルーして次に進もうと思います。

406 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 19:57:23.12 ]
良いコードじゃないけど、
Cで書かれたものって「良いコード」ばかりじゃないので、
一応は読み解けるようになっといた方がいいとは思う。

407 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 19:59:23.28 ]
スルーする前に、何で変だと言われたのか理解できるようにはなった方が良いな

408 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 19:59:55.30 ]
悪いコードだろ
読み解いた結果は
書いた奴バカ



409 名前:デフォルトの名無しさん [2013/05/04(土) 20:22:40.73 ]




↑こいつつまんね悪読書ってなんだよ

410 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 20:23:15.02 ]
C言語でメモリアドレスを指定して表示させたいんだけどどうすればいいんでしょうか?
printf("%d\n",0xbffff508);
こんな感じでアドレスを指定して中身を出力させたいんですが・・・

411 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 20:27:02.54 ]
printf("%d\n",*(int *)0xbffff508);

でした・・・事故解決しました

412 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 21:08:42.75 ]
>>410-411


何でこの基地害はブログと2chの区別すらつかないんだろうな

413 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 21:10:37.46 ]
[Mac/NUC] AGK / DarkBASIC / Basic4GL / 99BASIC 2013 Part.1
jbbs.livedoor.jp/bbs/read.cgi/computer/43761/1367197701/l100

414 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 21:12:46.73 ]
>>412
お前こそ一言余計
黙ってられない病気か?

415 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 21:20:42.88 ]
というかどうしてブログとの区別がついてないと思ったのかわからん

416 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 21:25:32.39 ]
>>412
さっさと死ねよゴミ
死んだほうがいいですよ
楽になりますよ

417 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 21:34:07.82 ]
>>415
触らぬキチガイに祟りなし

418 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 22:38:55.12 ]
質問しつつ、継続して自分でも考えてた証拠だろう
丸投げよりよっぽどいい



419 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 00:44:37.51 ]
>>414=自己紹介してる池沼

420 名前:デフォルトの名無しさん [2013/05/05(日) 00:52:13.69 ]
全く考えずにとりあえず脊髄反射で質問し、ちょっと考えたら解決した証拠だろう
とりあえず質問する癖がある雑魚

421 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 02:19:05.17 ]
とりあえず脊髄反射で叩く癖がある雑魚

422 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 02:32:14.01 ]
お前ら小学のガキかーーーーっw

423 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 04:59:02.98 ]
.
               /\___/\
              / ⌒ 俺 ⌒ ;\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
              | (●), 、(●)、 |  | キンタマ中古C言語命!!”
        ⊂.    |  ,,ノ(、_, )ヽ、,,   | < 今日もキンタマ中古C言語でソース乞食するゾォォオオ〜っ♪”
       ,r----、__|.Javaト‐=‐ァ'   .::::|  | 仕事レポート全部くれくれ乞食するぞォォォオオオオ〜っ!”
      /Ruby     \最強ニニ´  .:::/   \____________________
      (ひま,/¬--v   \____/⌒\     
     /⌒ (    ]  |丶 ̄ ̄  /丿  丿      ─
    (_  _丿    ,ノ--v_\ 糞  ノ   ノ       今日も見にくい小文字でプログラミングするぞ〜!!(ギャハハ!!wwww”
       ̄      ノ宿敵 リ--─ーARM八      
            〔 マシン語 Python__,ノ′ヽ       ギブ・ミー・レポート!!!! ギブ・ミー・ソース!!!!
          ,ノ'' ー--ー┘■■ ̄\  │     
          /    /  ̄■■■/ \  |        #○&#$△#%&$▼&%#!!!!
         ノ   /]アンチ|■AMD命|\|       \\   (↑意味不明w)
         |  /  .| Intel |  )   ノ    
         |/′   |    .|  |---く       
               |    |  \  ] ※)一部見苦しい部分がありますが御了承下さい。
.

424 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 05:40:12.13 ]
宿題スレで心を潰されたんだねかわいそう

425 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 12:11:47.33 ]
彼らはBASICから得られた体験を ” タブー視 ” しなければいけないため、常に孤立を要求される。

426 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 16:53:03.02 ]
文字列をインライン展開する方法ないですかね?
電卓プログラム作りたいんですが、文字列そのまま代入して
計算させたいです。

427 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 17:05:00.57 ]
できません

428 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 17:26:41.70 ]
>>427
馬鹿には無理だから引っ込んでろ



429 名前:デフォルトの名無しさん [2013/05/05(日) 17:44:45.30 ]
ということは優しい>>428がやってくれるんだな?

430 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 17:46:06.62 ]
>>428
「俺がする」とは誰も言ってない
>>429の馬鹿以外の誰かがするだろうよ

431 名前:デフォルトの名無しさん [2013/05/05(日) 17:51:17.88 ]
>>430
結局他人頼みかボンクラ
テメーでやれよパーかおめ

432 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 17:52:36.12 ]
>>431
そこまで言うならお前がやったれや
俺は酒飲んでて今から寝るんだよ(笑)

433 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 17:55:14.27 ]
お前らどんだけ寂しいんだよ。。

434 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:04:07.98 ]
GWだからかな

435 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:12:31.48 ]
>>428が俺に任せろって言って1時間以上たったが未だに
レス無しかよ。GWだなぁ。

436 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:14:48.62 ]
インライン展開ってどういうことだ?

437 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:18:53.39 ]
やるやる詐欺

438 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:25:50.66 ]
やりたいことが伝わっていないから
もう一度詳細に書いて
”文字列をインライン展開””文字列そのまま代入”の意味が伝わらない



439 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:29:19.72 ]
文字列を数式に展開したい。代入は感覚で言っただけで意味はないです。

440 名前:デフォルトの名無しさん [2013/05/05(日) 18:30:07.11 ]
そうだそうだ

仕様書も出さずに作れとか馬鹿の極み

441 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:31:43.54 ]
>>426のやりたいことは逆ポーランド記法で解決出来ないか?

442 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:33:58.79 ]
なんっすかそれ。

443 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:34:30.72 ]
発達障害たちの自己紹介祭り

444 名前:片山博文MZパンク ◆0lBZNi.Q7evd mailto:sage [2013/05/05(日) 18:43:16.88 ]
字句解析、構文解析を行って、文字列を木構造に変換して再帰的に解釈する

パーサジェネレータで検索

445 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:45:53.54 ]
レゴをC言語で制御したいんですけどお勧めの開発環境教えてくれませんか?

446 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:49:17.42 ]
インライン展開とは、関数呼び出しを止めることです

447 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:52:40.49 ]
(式が書かれた)文字列に従い 式の評価・演算を行いたい

yacc 使うまでもない感じ?

448 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 18:57:07.70 ]
c言語の参考書買う奴って何なんだろう。
ネットに入門サイトいくらでもあるじゃんね。



449 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 19:32:28.75 ]
>>426
ttp://ideone.com/clone/4uiNHy
実行例
input=1+2*(3-4)*(5+6*(7-8))
3

450 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 19:37:37.51 ]
yaccまでやらんでも、再帰下降構文解析あたりで調べれば出ると思うよ
課題だとしたらその辺りのこと想定してるんだろうし

451 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 19:46:06.82 ]
つかcodepadのほうが好きなんだけど
ここではIDナンバー1のほうが流行ってるの?
codepadのほうが見やすくて好きなんだが。

452 名前:デフォルトの名無しさん [2013/05/05(日) 20:14:48.59 ]
>>451
お前の好みなんかどうでもいいんだよゴミ。
そんなに書きたきゃブログに書いてろクズが。
二度と来るな。

453 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 20:25:51.28 ]
>>452
2度と来るなという事は3度目は来ていいんですか?
3度目来るためには2度目来ないといけないんですが(笑)
while(1){;}の後の関数の気分です。

454 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 20:26:52.00 ]
char i[]={"\x0f"};
printf("%d\n",i[0]);
この結果15

char i="\x0f

455 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 20:27:23.49 ]
char i="\x0f";
printf("%d\n",i);

この結果-32
何故?

456 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 20:31:56.75 ]
>>452
はい来ました
何か問題でも?

457 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 20:42:49.18 ]
>>455
signed char i = (signed char)&"\x0f"[0];
printf("%d\n", (int)i);

458 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 21:28:14.63 ]
>>457
同じ結果です



459 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 21:47:16.49 ]
ポインタを整数変数(char i)に代入しようとしてる

char i = '\x0f';

460 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 21:57:56.29 ]
charを%dと%cで比べて遊んで見れば良いんじゃないかな

461 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 22:29:52.16 ]
char i = *&"\x61"[0];
printf("%c\n",i);

これでできました
文字列リテラルの存在忘れてました

462 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 22:50:33.90 ]
char i = '\x61';
printf("%c\n",i);

ではだめなのか?
何をやりたいかわけわからん。

463 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 22:51:45.32 ]
>>461
*& とかいるのか。

464 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 22:55:58.47 ]
>>462
''と""に入れたとき違いがよくわかってなかったので試してました

465 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 05:45:50.51 ]
下みたいなコードだとコンパイルでウォーニングが出るけど、引数のconst止めるのと代入でchar*にキャストするのと、
どっちがいいでしょうか
static unsigned char* b;
void foo(const unsigned char* a)
{
b = a;
}

466 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 06:43:02.94 ]
*bは書き換えるのか?
リテラルを渡してやろう

foo("abc");

467 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2013/05/06(月) 06:46:50.45 ]
>>465
const で宣言した変数が const でない挙動をする (キャストで const を剥がす) のは間違いのもと。

468 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 08:40:36.40 ]
>>430
それだと、「それなら、黙ってろ アホ!」とならね?



469 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 08:42:07.17 ]
>>468

>>428書いたの俺じゃねーし
>>428書いた奴に言ってくれ

470 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 09:46:23.22 ]
リテラル(大爆笑)

471 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 10:28:25.74 ]
どこが面白かった?

472 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 11:53:19.42 ]
>>465は、
関数の引数が関数自身によって変更されない値を参照するポインタならば、関数の引数をconstとして宣言する
www.jpcert.or.jp/sc-rules/c-dcl13-c.html
const 修飾をキャストではずさない
www.jpcert.or.jp/sc-rules/c-exp05-c.html
ってことで、どうすりゃいいんだと思ったけど、リンク先の優先度見ると引数のconst外した方がいいのか
>>467はそういうことなのか
memcpy(&b, &a, sizeof(unsigned char*))なら文句言われないけど、パッと見分かりにくいわな

473 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 11:56:38.45 ]
リテラル(大爆笑)

474 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:23:00.40 ]
>>466がおかしいのは、そもそもfooのコール前のウォーニングのこと言ってるってのと、
引数と代入先がchar*じゃないってこと

475 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:24:52.76 ]
char str1[] = "hoge"; /* (A) */
char *str2 = "hoge"; /* (B) */

このBのほうは文字列リテラルのhogeの先頭アドレスをポインタ変数*str2に入れてるのはわかるけど
この"hoge"の先頭アドレスはデータセグメントに入ってるの?
AのほうはAuto変数だからスタックセグメントに入ってるとわかります

定数はデータセグメント?教えてください

476 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:30:31.28 ]
>>475
どちらも"hoge"はデータセグメントです。
Aはmemcpyが走るだけです。Bはデータセグメントへのポインタが入ります。

477 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:38:55.20 ]
>>476

>(A) は、単なる配列なので 'h', 'o', 'g', 'e', '\0' というデータはスタックというところに置かれます。

と書いてあるけど?・・・
Aはstr1[0]='a';みたいに書き換えできるけど
Bはstr2[0]='a'みたいに書き換えできませんよね?

データセグメントの中にも書き換えできるのとできないのがあるんですか?

478 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:39:46.83 ]
リテラル(大爆笑)



479 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:40:56.08 ]
>>477
str1,2ともローカル変数ならスタック、グローバルなら変数領域に割り当てられる
hogeの実体は、str1はstr1に、str2は定数領域に入る
ってggったら出てきた

480 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:43:36.91 ]
必死必死w

481 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:48:08.65 ]
グッドウォーニング

482 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:52:58.61 ]
リテラル(大爆笑)

483 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 12:57:34.51 ]
>>465
bがconstでない時点でconst宣言したアドレスをコピーするのはまずいだろう。
いつ書き換わるかわかんないのに

484 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:01:13.59 ]
>>483
>関数の引数が関数自身によって変更されない値を参照するポインタならば、関数の引数をconstとして宣言する
少なくとも関数内では書き変わらないから、関数自身による変更さえなきゃconstで宣言するものかと思ったんだが

485 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:09:36.08 ]
>>479
定数領域ってセグメントでいうどこ?

486 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:11:17.44 ]
>>485
rodata

487 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:16:20.95 ]
>>486
rodataって場所か
セグメントでぐぐってたからでてこなかったけど
セクションでぐぐったらでてきた

www.ertl.jp/~takayuki/readings/info/no02.html
ありがとう

488 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:29:46.40 ]
大炎上w



489 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 16:10:41.71 ]
QZただいま自演にて発狂中

490 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 16:14:03.62 ]
2chで自演云々言う奴めんどくせ

491 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 16:44:53.13 ]
自演バレしたからってお行儀が悪いなQZ

492 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 16:55:26.15 ]
>>491
QZじゃねーから
証明できないけど、2ch運営にでもIPきいたら?

493 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:25:53.03 ]
今小6で自分でプログラミング組んで勉強してるんですがCの次は何が
お勧めですか?取り敢えずドスコマンドを自作するみたいな事から初めて
今はサーバークライアント型のプログラムに挑戦しています。
その内3Dゲームもやってみたいと思うんですがライブラリで何か良いの
ありますか?友達でプログラミング趣味の子全然いないんですよ。

494 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:26:59.75 ]
名前欄にfusianasanって書き込めば自分のIPは出せるよ。
他人が自分ではないことの証明にはならないが。

495 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:29:20.78 ]
>>493
HSP

496 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:29:33.92 ]
ふーん、でも本人(QZ)はやらない
やってもPCとスマホを使い分けて自演じゃないとか言い出すこと間違いなし

497 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:30:52.16 ]
>>494
そう。自演であることも自演でないことも客観的に証明できない
つまり、自演乙wwwwwとか言ってる奴はアホだということ

498 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:30:57.48 ]
>>493
C++



499 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:34:30.34 ]
>>493
C++やるならDXライブラリ
Unityでもいいけど、最初から便利すぎると勉強にならない気もする

500 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:37:21.21 ]
>>495
あー知ってます。てか一番最初に覚えた言語ですw
文法が簡単でゲームが作りやすかった記憶があります。
>>499
ありがとうございます。
自分で機能とかも作りたいので低水準のC++をとりあえず勉強してみます。
ただUnityが便利過ぎるというのは初耳ですが本当でしょうか?
リアルタイムレンダリングの機能とかありますか?

501 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:43:24.23 ]
>>500
Unityは開発環境だからそういうのとは別
ゲーム作りたいだけなら使えばいいんじゃね
悪い意味でなくて、趣味でやるなら好きにやればいいと思う

502 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:45:42.56 ]
>>501
色を付けたりする機能も実装されてますか?グラデーションとか。

503 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:48:08.85 ]
ゲーム作りたい人はUnityなんか使ってないから

504 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:48:58.57 ]
>>503
じゃぁ何使ってるんですか?ゲーム作ってる人って。

505 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:49:21.56 ]
とりあえず……ググれ

506 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:50:48.88 ]
Unity(笑)でゲーム開発しようとするゆとりと発達障害はここいって

【3Dゲームエンジン】Unity総合スレッド18
toro.2ch.net/test/read.cgi/gamedev/1362904281/

507 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:51:06.31 ]
>>502
だからそういうライブラリとUnityは別ってこと
ほんととりあえずぐぐれ

508 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:52:05.59 ]
>>501さんはゲームはUnityが良いって言ってるけど>>503はゲーム作りには
向いてないって言います。どちらを信じれば?



509 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:54:20.28 ]
でもUnityで画像検索したら精巧な3Dクオリティの作品がたくさんヒットします。
3Dと相性は良いのでしょうか?

510 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:54:52.98 ]
Unity(笑)でゲーム開発しようとするゆとりと発達障害はここいって

【3Dゲームエンジン】Unity総合スレッド18
toro.2ch.net/test/read.cgi/gamedev/1362904281/

511 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 17:58:33.37 ]
QZが墓穴を掘ったことに対して恥を感じて自演レスを加速中

512 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:15:50.35 ]
プログラミングよりモデリングの勉強しろ
Blender使え

513 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:24:09.69 ]
Unityとか言う時点で軽蔑の対象だからな
Unityの実績みたらPCゲームやネトゲで全く使われてないからな相当ゴミでハイクオリティなゲームには適してないんだろう
ゴミはたぶんFFとかドラクエとかで育ってきたゆとりのゴミだからスマフォ向けタワーディフェンスやブラゲとか作ってろゴミ
さっさと死ねキチガイ

514 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:25:55.25 ]
Blender使いたいんだけどさすがに小6でCUIプログラムしかしてませんから
できません。あれって人体作ったらそれを動かすためにプログラムしないと
ダメなんでしょうか?

515 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:34:18.55 ]
線形代数学の勉強した方がいい
簡単なことなら三角関数を使ってごまかすことができるが
座標変換は日常的に使うし外積つかった当たり判定とかフライトシミュ作ったりするならジンバルロックを考慮する必要がある

516 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:40:32.53 ]
ニコニコ動画で3dsmaxの作品があって人物が剣を持って走って
きて華麗に宙返りして決めるっていうのでした。
ひとつひとつの動きをプログラミングで作っているのでしょうか?

517 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:45:06.81 ]
このキチガイスレチガイは死ね

518 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:46:59.10 ]
日本語が崩壊しているぞ在日チョン



519 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:55:03.28 ]
ゲームなんか作ってどうするのよ
周りのみんなは受験勉強やら自己啓発で資格取得やら親しい友人と親睦深めたりしてるのに
ゲームプログラミングなんかしてても受験、就職、出世、何の評価にも繋がらないぞ
小学生なら受験勉強でもしてた方がなんぼかマシ

520 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:57:38.11 ]
QZこの流れを注視し宿題自演質問をタイミングを淡々と窺う

521 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:00:21.76 ]
>>519
だって周りがそういう友達ばかりだもん。
だから自分で趣味としてプログラムやって充実してるんだよ。

522 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:06:55.69 ]
>>42 >>243 >>252 >>280 >>489 >>491 >>496 >>497 >>511 >>520
被害妄想粘着童貞の振る舞い

523 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:12:52.25 ]
ゲームはやるので十分だろ
既存のハイクオリティで面白いゲーム以上のゲームが作れるっていうなら別
どうせミニゲームとかだろ

莫大な金かけて作ってるネトゲやPCゲーム以下
ゲー専、アマチュア(同人)とかもしょっべーゲームしか作れてない

変愚蛮怒,,Elona,オンラインゲーム作って運用このぐらいのゲームが作れてスタートライン
それ以下のゲームはさっさと死ぬべき

524 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:35:53.34 ]
>>493
www.amazon.co.jp/dp/4871481689/ : make, レイトレーシング、Ada風俺々コンパイラ
www.amazon.co.jp/dp/4871482006/ : 本格lispインタプリタ
www.amazon.co.jp/dp/4774100544/: lisp インタプリタを扱っているもう一つの書籍、ただしソースは完全ではないと個人的に思っているディスクサービスを申し込んでおけばよかた‥‥上記2冊以外を知らない
K&R1のCだがどうとでもなる、というかここで躓くようでは修行がたりない

525 名前:デフォルトの名無しさん [2013/05/06(月) 19:37:03.34 ]
趣味のゲーム開発の話にオンラインゲームがスタートラインとか言ってる奴がいて笑い死にしそう。

526 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:40:31.10 ]
ゲーム開発のスタートは落ち物系だろ。譲れない。

527 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:48:44.90 ]
まずはパズルゲームが楽でいいよ
倉庫番とかマインスイーパとか

ゲーム作るなら、
ゲームプログラマになる前に覚えておきたい技術
って本がオススメ
ただし、C++の本は別に必要なのでちと高い買い物になるかも
C++をネットで勉強するのもありだが

528 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:14:52.65 ]
C++分からん



529 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:19:10.12 ]
馬鹿には無理

530 名前:デフォルトの名無しさん [2013/05/06(月) 20:20:31.13 ]
東方厨を越えるゲームを作りたい!

まずはみんなでアイデアを出そうぜ

531 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:20:56.78 ]
>>529
ふっ

532 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:30:30.42 ]
ゲーム製作スレでやれよゴミクズゲー専は

533 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:33:33.10 ]
テイルズみたいなゲーム作ってほしい。
ああいう演出に凝った感じのやつ。

534 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:35:02.78 ]
>>533
テイルズオブ銀魂双六か。

535 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:38:35.75 ]
ゲームの話題はこっち
中卒+ゲー専門はこちら

ゲーム専門にクズが多い理由(笑)
toro.2ch.net/test/read.cgi/gamedev/1359679374/

536 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:39:22.78 ]
テイルズって最近は秘奥義とかFF化してるじゃん、やたら時間食うし
キャラが喋りなから秘奥義使ってるけど聞いてるほうが恥ずかしくなるような台詞が混ざってるよな
厨二病の俺でも恥ずかしくなるような台詞だぞ、どうなってんだ

537 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:40:55.83 ]
好みはさておきテイルズくらいの作れたら東方は越えられるな。

538 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:44:26.89 ]
ゲームの話題はこっちのスレ
中卒+ゲー専門がゲーム製作もこっち

ゲーム専門にクズが多い理由(笑)
toro.2ch.net/test/read.cgi/gamedev/1359679374/



539 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:45:12.89 ]
C++分かるとか神かよ

540 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:50:33.02 ]
あれはほとんど演出&声優ゲー

■評価できないところ
秘奥義のエフェクトを除けばグラもPSで再現できるレベル
ピカピカドカンズババババな技が多すぎ
基本&戦闘システムがほとんど進歩してない(凝ってない)

■評価できるところ
カメラアングルとかイラストの使い方はかなり研究されてる
ボイスデータが大量に入っている
エフェクトがきれい

541 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:51:11.33 ]
C言語なら俺に聞け(入門編)Part 114

542 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:51:15.18 ]
ゲームの話題はこっちのスレ
中卒+ゲー専門がゲーム製作もこっち

ゲーム専門にクズが多い理由(笑)
toro.2ch.net/test/read.cgi/gamedev/1359679374/

543 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:53:00.11 ]
横スクロールアクションとかどうよ??
最近あまり出てないっしょ。
任天堂がたまにマリオ出すくらいでロックマンも新作がでない。

544 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:53:32.91 ]
ゲームの話題はこっちのスレ
中卒+ゲー専門がゲーム製作もこっち

ゲーム専門にクズが多い理由(笑)
toro.2ch.net/test/read.cgi/gamedev/1359679374/

545 名前:デフォルトの名無しさん [2013/05/06(月) 20:54:18.52 ]
テイルズがC言語なんかで作れるわけないだろ

546 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:55:00.59 ]
スレチが沸いてるな迷惑

547 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:55:34.17 ]
>>543
3Dが当たり前のように使えるのに2Dゲーなんかやりたいか?

548 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:56:47.34 ]
テイルズ=ヲタ向け



549 名前:デフォルトの名無しさん [2013/05/06(月) 20:58:19.03 ]
ミニゲーム作って満足しないよ。
とりあえずネットで仲間集めてそこそこクオリティ高いゲーム作って
同人作品として売りたい。昔のゲームのリメイクとか作ったら良いん
じゃないかと考えてる。

550 名前:デフォルトの名無しさん [2013/05/06(月) 20:58:27.29 ]
>>547
2dなら酔わないとかあるだろ
あと直感的に分かりやすいとか

551 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:59:40.14 ]
見ての通りゲーム作る奴はスレチのキチガイ

552 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:59:53.84 ]
昔のやつをリメイクするのは版権買ってくるのとか面倒じゃね?

553 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:00:15.48 ]
>>551
中卒と低学歴のゲーム専門学校が荒らしてる感じ
邪魔だな

554 名前:デフォルトの名無しさん [2013/05/06(月) 21:02:20.80 ]
>>552
いやドンキーコングならモンキーコングとかにする。
ダメかな?

555 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:02:52.99 ]
このスレはC言語とアセンブリぐらいの内容
ゲームはスレ違いだから別スレでやれ

556 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:03:05.06 ]
どっちにしても1人では無理でしょ
プログラマー、イラストレーター、ドッター、モデラー、シナリオライター、ゲームデザイナー、作曲家、スクリプト組んだりする雑用
辺りが最低でも必要

557 名前:デフォルトの名無しさん [2013/05/06(月) 21:04:42.52 ]
>>554
タイトルはギリギリセーフだと思うけど、
キャラとかはどうする?

558 名前:デフォルトの名無しさん [2013/05/06(月) 21:05:29.84 ]
>>556
そういう細分化なぁ....
ゲームデザイナーとシナリオライターは一緒でしょ。
何かそうやってメーカーの構成にする事に酔ってる感じがする。



559 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:06:04.07 ]
>>551,>>553
嫌なら見るなよ精神異常
嫌だ嫌だと言いながら見てるとかマジで頭おかしいんじゃねw

560 名前:デフォルトの名無しさん [2013/05/06(月) 21:10:37.57 ]
>>557
既存のものを派生させるっていうのは簡単でしょ。
むしろそこにモチベーションを持たないと。
とりあえず携帯ゲームブームに勝ちたい。

561 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:10:46.40 ]
>>558
違うぞ
デザイナはシステム作ったりバランス調整したりする奴だぞ
シナリオとは全く別のスキル
両方こなせる奴を探すのもありだけど、別々に探すほうが手っ取り早い
そのための細分化だ

酔ってるようで嫌なら
プログラム兼作曲兼グラフィック兼シナリオ兼デザイン担当を探してもいいとは思うけど

562 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:12:11.03 ]
ゲームはプログラマだけいても作れない。
かわいい女の子(ロリ)を書ける絵師が必須。

563 名前:デフォルトの名無しさん [2013/05/06(月) 21:15:00.83 ]
>>561
エロゲのスタッフロール見たんだけどスタッフ多すぎるんだよ。
20人以上はいたんじゃないかなと?マニファクチュアは作業の混乱を防いで
効率的だけど自由な発想が制限されるんじゃないかと思う。

564 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:17:32.76 ]
みんなゲームプログラマなの?

565 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:19:47.16 ]
>>556
趣味プロなんだから1人で十分だろw
大体のものはフリー素材でなんとかなる

566 名前:デフォルトの名無しさん [2013/05/06(月) 21:20:28.29 ]
携帯ゲはみんな面白くてやってるわけじゃない。
手軽さなんだよ。

567 名前:デフォルトの名無しさん [2013/05/06(月) 21:32:13.34 ]
趣味プロだとモチベーション持てないな。
分業の楽しさを知りつつ成果を得たい。

568 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:50:29.25 ]
>>567
そうだよな、成果は重要
一番客観的で数値化できる成果というとやっぱり金だな
同人でも何でもいいから売ってどのくらい売れたのかってのがそれを一番簡単に測れる



569 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:53:37.10 ]
お前ら全く分かってないな
フレームワークを作るのこそが楽しいんだろ
ゲームが完成するかどうかなんて
どうでもいいことじゃないか

570 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 21:56:26.42 ]
[Mac/NUC] AGK / DarkBASIC / Basic4GL / 99BASIC 2013 Part.1
jbbs.livedoor.jp/bbs/read.cgi/computer/43761/1367197701/l100

571 名前:デフォルトの名無しさん [2013/05/06(月) 22:14:41.58 ]
>>569
フレームワークだけ作ってもおもしろくない

572 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 22:48:12.54 ]
今帰ったけど何でこんなスレ荒れてんだ・・・

573 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 23:16:56.11 ]
>>571
プログラマ向いてないから
さっさとSE()にでもなった方がいいんじゃない?

574 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 23:19:24.73 ]
>>572
自演で大量に荒らしレスを連投するいつもの人が
派手に発作起こしちゃったから。

575 名前:デフォルトの名無しさん [2013/05/06(月) 23:20:24.82 ]
テイルズみたいなやつ作るなら協力するよ

576 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 23:22:11.20 ]
感情論は不要
アセンブラ君のほうがまともだったな

577 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 23:39:20.44 ]
ゲームすら作れないC厨が発狂w

578 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 23:43:42.05 ]
ゴミの収集とかなら



579 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 23:47:00.80 ]
C厨も何も、Cスレじゃんか

580 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 00:18:42.20 ]
俺もC言語でゲームを作ろうと思っているので
自分でゲームを作ろうと思っている同志のいるこのスレを活動拠点にしたいと思います
質問などすると思いますがよろしくお願いします

581 名前:デフォルトの名無しさん [2013/05/07(火) 00:43:29.02 ]
難しいことが出来るより、ゲームが完成することが大事。
同品質の物が作れるなら、手間が少ないほうがいい。
ゲーム会社も、開発コスト、日数を下げるための工夫している。


[E3 2012]スクウェア・エニックスの独自開発エンジン「Luminous Studio」による,驚異のリアルタイム技術デモ「AGNI'S PHILOSOPHY」が公開
本デモ映像の制作に使用した「Luminous Studio」とは、当社が独自で開発を進める、ゲーム開発ツール・プログラム群を統合した次世代総合ゲーム開発環境(ゲームエンジン)です。
本ゲームエンジンは、ゲーム制作チームに大きな生産性の向上をもたらし、同時に圧倒的な品質のゲーム制作ができる環境を目指しています。
また、本ゲームエンジンは、ゲーム専用機、PC、スマートフォン、WEBなど、次世代を含む多様なゲームプラットフォームに対応する予定です。
www.4gamer.net/games/032/G003263/20120606107/

582 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 00:50:29.89 ]
別スレでやれ

583 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 02:38:34.65 ]
ゲームのフレームワークより低水準の部分って、
基本的にどれも変わらんよな。
メインループ作って、リソース管理作って、データベース作って、って辺り。

584 名前:デフォルトの名無しさん [2013/05/07(火) 02:58:50.10 ]
アイテムとかってどうやって管理するんですか?
全アイテムはIDとアイテム名をセットにしておくと思うのですが、
所持アイテムはIDと個数をセットにしておくと思うんですよ
でもそれだとメニューから所持アイテム一覧を開いたとき、
全アイテム一覧からIDでアイテム名を引いてこなきゃいけないじゃないですか
全アイテム一覧はメモリに読み込んでおくんですか?
それともメニュー画面開くたびにHDDから必要なアイテム名だけ引いてくるんですか?

585 名前:片山博文MZパンク ◆0lBZNi.Q7evd mailto:sage [2013/05/07(火) 03:23:25.99 ]
>>584
メモリに展開しておく。
ファイル読み込みだと、遅延が発生する恐れあり。
その手の処理ならC++が楽チン。

586 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 03:27:58.99 ]
夜遅くにうるせえよ
黙って寝とけ

587 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 04:37:23.42 ]
>>584
本当にIDとアイテム名だけならどっちでもいい。
だけど最近のゲームみたいに解像度の高いアイコンと説明文が出るようなやつは毎回HDDから読み込んだほうがいい。

588 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 05:18:06.69 ]
データ量によるんじゃね

合計1M以下なら読み込んでおくとか
自分で適当に閾値決めて
データ量がその閾値を超えないなら全部読み込んでおく

超えるならその都度読み込み&キャッシュじゃね



589 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 12:30:18.12 ]
char str[]="ABC"; /* Main関数内*/

これってどうなってんの?文字列リテラルだと定数領域に確保されてその先頭アドレスが返るって話だけど
配列の場合はスタック領域のアドレスが入ってたけど何で?

Auto変数だからスタックにstr配列が確保されて文字列リテラルで定数領域に文字列が確保されてその先頭アドレスからスタック領域にコピーしてるって感じ?
コピーしてる命令は配列とかがやってんの?教えてください

590 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 12:45:46.28 ]
仕様の理解はそれでいい
実際どうなってるかは逆アセンブルしてみるしかない

591 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 12:57:27.47 ]
>>590
>>476がいってるmemcpyくさいなぐぐってみるか
メモリ理解とアセンブラ理解してるとしてないとでは全く違ってくるなこれ

592 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 15:01:27.75 ]
言われてみれば最近のゲームはリッチなアイコンが付いてるね
アイテム名の横に出るやつじゃなくて画面下の説明欄に一緒に出てくるやつ
アイコンというよりもはや絵だよな

593 名前:デフォルトの名無しさん [2013/05/07(火) 15:09:55.57 ID:qEqQNQf6O]
そうして開発コストがあがっていく。

594 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 15:45:32.94 ]
配列にいれる分コスト掛かるから参照するだけならポインタにしろってことか

595 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 16:12:23.83 ]
いやconst []の方がいいコード出る

596 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 18:05:08.79 ]
>>589
定数領域に"ABC"取って、何らかの方法で"ABC"をstrへコピーしてる
何らかの方法ってのはコンパイラ次第で、memcpyと同じかも知れない
でいいのかな

597 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 18:51:17.57 ]
>>593
ID, ID!

598 名前:デフォルトの名無しさん [2013/05/07(火) 19:00:25.55 ]
あれこの板IDでるっけ?



599 名前:デフォルトの名無しさん [2013/05/07(火) 19:31:33.81 ]
【2ch】海外からの書き込みだとIDの末尾に ! が付くようになった
engawa.2ch.net/test/read.cgi/poverty/1367913537/

これが関係している?

600 名前:片山博文MZパンク ◆0lBZNi.Q7evd mailto:sage [2013/05/07(火) 23:08:23.92 ]
最近の逆コンパイラはすごいぞ。C言語だと元のコードがそのまま再現される。
他人に盗まれない仕事がしたいならC++にしろよ。

601 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 23:10:10.33 ]
片山ゆうちゃんちーっすwww

602 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 23:41:12.39 ]
>>600
そんな逆汗があるのか?URLよろ

603 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 23:51:15.51 ]
携帯からだとIDが出るようになったのか

604 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 23:55:08.93 ]
Qは確かp2経由だったけど巻き込まれたのか

605 名前: ◆QZaw55cn4c mailto:sage [2013/05/08(水) 01:48:46.87 ]
大丈夫みたいですよ静かになればいいのにね

606 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 08:18:40.99 ]
>>600
C#だったらわかるんだけど‥‥

607 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 08:41:18.56 ]
>>600
ねーよ

608 名前:デフォルトの名無しさん [2013/05/08(水) 12:23:56.99 ]
double型の変数dがほぼ0に等しいか調べるにはどうしたらいいですか?



609 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 12:38:58.01 ]
>>608
fabs(x - constance) じゃだめなの?

610 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 12:49:06.27 ]
つまんねっ

611 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 12:52:54.21 ]
>>610
なら2chに来るな
それかお前が面白いネタを提供しろ

612 名前:デフォルトの名無しさん [2013/05/08(水) 12:57:55.57 ]
DBL_EPSILON  2.2204460492503131e-016   1.0+DBL_EPSILON !=1.0となる最小値

DBL_MIN   2.2250738585072014e-308   最小の正の値

msdn.microsoft.com/ja-jp/library/k15zsh48(v=vs.80).aspx

613 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 13:00:51.22 ]
機械イプシロンの意味を理解している奴がどれだけいるのか・・・

614 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 13:05:32.61 ]
覚えただけの知識を自慢

615 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 13:46:08.03 ]
http://情報処理試験.jp/FE25a-pm/t09.html

このCわかりやすくいけた
難易度これくらいでいいな

616 名前:デフォルトの名無しさん [2013/05/08(水) 16:55:41.18 ]
Cしかできない奴ってGUI作るときにもC使っちゃうわけ?w

617 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 19:02:56.00 ]
>>581
完成させることって重要だよな。
やっぱりプログラムを作るとしても使い回し能力ってのは必要なの?
要領が悪いから最初から作らないといけないんだよ!とか
言われたりするの?

618 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 19:50:13.23 ]
>>558
ゲームデザインをシナリオと一緒にすんな
テトリスくらいならいいけど、最近のRPGみたいなやつを素人がデザインすると地獄絵図になるぞ

〜ゲームデザイナーなし劇場〜

開発者A「なぁ、このボスに到達するときにこのパーティーのレベルって高くない?」
開発者B「え?じゃぁ経験値少なくするか」
開発者C「おい、全体的に減らすなよ、その前のボス戦ではちょうどよかったんだから」
「じゃぁそのボス弱体化すればいいじゃん」
「えっ」
「えっ」
「そうじゃなくてAが言ってたボスを強くすればいいんじゃね?」
「強くって何を?HPあげるの?攻撃力あげるの?」
「HP上げたら長期戦になってダルいだけだろ、攻撃力上げろよ」
「・・・攻撃力あげてみたよ、攻撃力上げたら魔法使いが一撃で死んだよ」
「上げすぎなんだろ馬鹿」
「だってそのくらい上げないと他のキャラほとんどダメージ受けないんだもん」
「ダメージの計算式がおかしいんじゃね?」
「はい」
「はいじゃないが」
「いや、ダメージの計算式変えると全体のバランス変わってくるから無理です」
「普通に魔法使いの防御力が低すぎるだけだと思われ」
「そのボス直前の街で買える防具に、魔法使い用のもう1つ上位の防具追加したらどうよ」
「追加しなくてもその防具の防御力上げれば済む話だろ」
「属性防御が付いてる代わりに、防御力低くしてあるんだけど、防御力上げちゃうの?」
「いいから上げろよ」
「・・・防御力上げてみたよ、ボスはちょうどよくなったけど、雑魚戦でダメージほとんど受けないから面白くないんだが」

ってのが延々と続く



619 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 22:06:03.65 ]
int *hoge()
{
int a = 10;
return &a;
}
これってマズい?

620 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 22:11:33.47 ]
>>619
別にコンパイルエラーにはならないと思うよ。
返り値を使わない分にはなんの問題もない。

621 名前:デフォルトの名無しさん [2013/05/08(水) 22:33:04.89 ]
>>618
逆にいえばゲームデザイナーの意見に口出しできないって事じゃね?

622 名前:デフォルトの名無しさん [2013/05/08(水) 22:46:10.60 ]
staticだったら使えるの?

623 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 23:30:15.90 ]
無能馬鹿はとっとと死ね
試せばいいだろ無能

624 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 23:38:50.21 ]
>C言語なら俺に聞け

625 名前:デフォルトの名無しさん [2013/05/08(水) 23:47:45.31 ]
わからないから煽る

626 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 23:54:57.51 ]
>>619
まずい

627 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 00:00:23.89 ]
まずいというか普通そんなコード書かないのでは

628 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 00:01:47.83 ]
ポインタは初心者には難しいから(震え声)



629 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 00:03:46.81 ]
自分でわからないコードは書くな とよく聞くのですが
この「わかる」というのはどの程度までを指すのでしょうか?
極端な話printf("hello");が何をしてるのか私は説明できません
printf()は引数を標準出力に出力する関数だということはわかります。構造はわかりません。
プログラムを理解するというのはどこまで掘り下げればいいのでしょうか?みなさんの意見をお聞かせ下さい。

630 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 00:05:09.40 ]
ロベールのC++教室 - 第8章 アドレスを返す関数 -
www7b.biglobe.ne.jp/~robe/cpphtml/html03/cpp03008.html
int* Func()
>{
> int a = 0;
> return &a;
>}
>のようなことは絶対にしてはいけません

631 名前:デフォルトの名無しさん [2013/05/09(木) 00:15:09.87 ]
だからstaticだったらどうなのよ

632 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 00:27:11.87 ]
スタックポインタを取得するために敢えてそういう事をする可能性もなくはないが、
どう確保されるかよく分からない内部変数よりは
呼び出し規約により位置がはっきり決まる引数の方がよさげ

staticなら別に何ともない

633 名前:デフォルトの名無しさん [2013/05/09(木) 00:46:28.63 ]
>>629
アセンブリ勉強きて実行ファイル逆アセして読めば?

634 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 02:25:07.91 ]
>>631
strtokやlocaltime, asctime, ctime辺りは、
staticかグローバルか知らないけど
そういうアドレス返しているね。

他にもあったかな?

635 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:00:37.10 ]
すみません。さっぱりわかりません。どなたか教えてください><
テキストファイル○○.docを読み込み、fscanf, strlenを使用して、長さが1以上の語の数を数えて出力するプログラムを書きなさい。
ただし、ファイル名の指定は、fopenの引数として直接プログラム中に書いて指定して下さい。(ヒント:テキストの中の単語をfscanfを使って1つずつ読み込み、その長さが2文字以上ならばワード数を1つインクリメントする。)
○文字列の長さを測る方法:strlen()を使用する。
○テキストファイル○○.docには長い英文が書かれている。
よろしくおねがいします。

636 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:14:44.99 ]
宿題は宿題スレへ

637 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:16:53.58 ]
QZ自演キターww

638 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:22:30.70 ]
宿題スレなくなってるのでここで聞きました。どうかお願いします



639 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:36:09.85 ]
まもなくQZの自演によるウンコード排出が始まります
とくとご覧あれw

640 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:37:00.92 ]
なくなってたら立てればいいじゃない

641 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:39:49.74 ]
こうやっていい流れの時に自演宿題して雰囲気を悪くするQZは極悪

642 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:42:41.26 ]
>>635
ideone.com/L5XpbZ

643 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:43:36.56 ]
キターww

644 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 11:47:47.55 ]
>>642
早速の回答本当にありがとうございます。

PS自演とか言って騒いでるやつなにが楽しいの⁈

645 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:02:12.93 ]
○○.docが非常に長くて、かつ末尾最適化が効かないコンパイラだったら
スタックオーバーフローを起こすんじゃないの

素直にループ使えないの?

646 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:05:08.25 ]
エラーチェックとか入ってないけど非常に素直な書き方で、このまま提出でいいと思う。

647 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:09:21.50 ]
なるほど、こうやって潜在的バグを放置するのがQのやり方か

648 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:12:15.13 ]
countが初期化されてないからバグってるな。
適当にcount=0;しておいて。



649 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:13:45.01 ]
>>646
ほらね
QZがものすごい勢いで書いたからウンコードになる
質問開始から1時間もたっていない

650 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:20:32.45 ]
宿題の回答ならこんなもんだろ。

651 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:23:43.23 ]
QZの能力の無さを宿題レベルだからあえてそういう風にしたと誤魔化しましたね

652 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:25:21.21 ]
ゲーム専門学校に通ってるんですがわからない場所があります
count>=0
count>0
これってどう違うんですか?

653 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:26:25.05 ]
無能ゲー専死ね

654 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:34:52.58 ]
>>652
上は0以上。
下は1以上。

655 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:35:47.04 ]
>>652
上は count が 0 の場合に真だが、
下は count が 0 の場合に偽である。

「より大きい」と「以上」の違い。

656 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:36:25.59 ]
>>654
count が int とは限らないでよ。

657 名前:652 mailto:sage [2013/05/09(木) 12:46:23.28 ]
では
count>=-1
count>-1だと?

658 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:47:41.51 ]
うわっこんなくだらない奴がCやってんの



659 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:48:52.49 ]
>>657
不等号はマイナス値に使うと不定になる。

660 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:49:53.87 ]
QZは叩かれると話題を変えたがるから
>>652は自演の可能性がある

661 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:52:27.16 ]
ゲーム専門学校は無能だなw
頭腐ってんじゃないの?

662 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:53:06.40 ]
そりゃ落ちこぼれが通う場所ですから

663 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 12:57:01.35 ]
QZ以下の知能指数

664 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 13:03:08.65 ]
>>659
んなわけない。

665 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 14:04:50.86 ]
(QZの)嘘を嘘であると見抜けいないと掲示板を使うのは難しい

666 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 15:31:24.24 ]
外部結合、内部結合、無結合について詳しく教えて
意味がわからん

667 名前:デフォルトの名無しさん [2013/05/09(木) 15:50:15.00 ]
externってよくわからないけど
どこか一つのファイルで実体宣言して参照するファイルでexternで良いの?

668 名前:666 mailto:sage [2013/05/09(木) 16:02:30.52 ]
>>667
あってる実態は何もつけずに宣言
分身にextern



669 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 16:05:25.14 ]
>>667
ttp://www7b.biglobe.ne.jp/~robe/cpphtml/html01/cpp01069.html

670 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 16:29:24.30 ]
C++やん

671 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 18:43:31.26 ]
こんにちは
今大学の研究室にC言語で作成したツールがあります
大体ソースコードが15個、ヘッダーも同じくらいあり、ソースコードは合計1万行くらいあります
このツールは私が研究室に入る前の先輩方が3人で作ったそうです

今回、先生がこのツールを全く新しく作り直したいと言い出し、私一人で同じようなツールを開発することになりました

そこで、既存のツールがどのような処理を行っているか知るためにソースコードを読み始めたのですが、説明などのドキュメントはおろか、ソースコードにコメントは一切書いてありませんでした

また、メイン関数の中身も宣言→よくわからない処理→宣言→関数など、宣言も関数もまとめて書いてあらず、インデントも適当です
変数名、関数名も意味がわかりません

このようなものを解析するには、やっぱり一つ一つ追っていくしかないのでしょうか?

私はC言語で入門書の演習くらいしかやったことがありませんのでこれから勉強をもっとしなければなりませんが、こういうツールを作成するのにオススメの勉強方法などありますか?

672 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 18:47:42.51 ]
>>671
とりあえずコード整形ツール通すのと
構造解析するツールに通しておけば
手間を2割くらい減らせる

あとの8割は……まあガンバレw

673 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 18:50:44.72 ]
目的があってそのプログラムを動かしているんでしょう?
であれば、今までのソースにたよらず動作や原理から仕様を作り新しく組むのが近道です

674 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 18:52:09.41 ]
>>672
ありがとうございます
Cを普通に扱える人だったら、どのくらいで理解できるんですかね...
自分は1ヶ月じゃ無理そうです...

675 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 18:57:11.30 ]
>>673
そうしようと思ったのですが、使えるところは流用しろとのことでして...
また、先輩方3人でアルゴリズムや構造体を考えるのに半年、ツール開発で結局2年かかったとのことだったので、正直しんどいです

676 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:01:31.26 ]
doxygenに掛けて一度整理してみろ

677 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:04:41.91 ]
まずは教授にこれこれなので無理です、というべきだな
解決案か別の案か何か考えてくれると思うよ

678 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:06:31.41 ]
作り直したい理由によるな
もしかしたらラッパー作ればいいだけかもしれん



679 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:14:35.53 ]
ここにソース晒さないかぎり正確な答えは得られないわな
今の範囲であれば、やるだけ無駄だから外注に出せ、くらいだ

680 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:32:15.09 ]
リファクタリング厨 vs 動いてるなら触るな厨の戦い!

681 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:40:37.47 ]
なんで作り直したいのかまず聞くことだな

682 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:49:00.97 ]
まあdoxygenとgraphvizで出力してみて、教授と相談すればいい

683 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:10:09.56 ]
沢山の返答ありがとうございます!
doxygenというもの使ってみます!
作り直したい理由は、企業からそのツールが欲しいと言われたが今の何て出せるもんじゃないといった理由らしいです
あとは、前提として対応してこなかったものに対して対応できることがわかり、そのためには大幅な改変が必要だからと言った理由です

先生に相談してみます!

684 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:14:51.00 ]
言っておくけど、君じゃ4年かかっても無理だよ

685 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:19:18.17 ]
っと馬鹿が申しております

686 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:21:23.35 ]
>>683
学生が作ったものだからひどいですよwww
って言いながら企業に渡して、企業にリファクタしてもらえ。
当然リファクタ後の使用権と改修権は企業からもらう契約にしてな。
おまえじゃ無理。

687 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:29:02.38 ]
ゲー専のバカじゃ無理だからな
文章からしてゲー専

688 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:30:19.13 ]
ゲー専の学生ならきれいなコード書くんじゃないの
そもそも専門の教授ってなんだよ



689 名前:デフォルトの名無しさん [2013/05/09(木) 20:34:28.76 ]
広域変数を動的にメモリ確保ってできる?

690 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 20:35:23.76 ]
>>689
動的に確保したメモリを広域変数に割り当てればいいんじゃね?

691 名前:デフォルトの名無しさん [2013/05/09(木) 20:52:00.97 ]
>>690
サイズ不定なので不可能です

692 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:00:06.32 ]
malloc calloc realloc

693 名前:デフォルトの名無しさん [2013/05/09(木) 21:00:32.60 ]
char *kuso;
main()
{
kuso=malloc();
}

694 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:03:39.58 ]
このmallocが実行されたらどのようにメモリが確保されるから知らない無能ゲーム専門
早く死んだほうがいいよ

695 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:08:56.90 ]
alloca malloca valloc

696 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:19:49.13 ]
クソコードだけど動くわな
free忘れんなよ

697 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:25:35.95 ]
>>683
ソース整形も忘れずに。cならindentコマンドでもいける。
既存動作と比較できるツールも作る必要があると思うので、その分のスケジュールも相談するの忘れずに。
あと、可能なら既存動作を保証できるようにテストを先に作ってから修正始めた方がいい。
よくわからないものを修正するときはその方があとで楽。

698 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:45:15.35 ]
>>693
初心者に嘘教えるのが未だに居るな。



699 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:52:40.26 ]
もうC諦めてC++にしろ

700 名前:デフォルトの名無しさん [2013/05/09(木) 21:57:43.82 ]
>>698
それは聞き捨てならんな
・グローバル
・サイズ不定
というオーダーを満たしてやったうえ
変数名に心を込めたんだぞ

701 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 22:23:18.69 ]
>>700
引数くらい書けや

702 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 22:59:19.13 ]
>>701
どうでもいいことで煽るなよ。

703 名前:デフォルトの名無しさん [2013/05/10(金) 00:29:43.30 ]
array=malloc(sizeof(int)*n*2)で確保したものって
array[n][n]みたいな使い方できる?
型はint

704 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 00:35:23.40 ]
[n][n] だと n*n の器が必要だぜ

int *array = (int*)malloc(sizeof(int)*n*n);
[i][j] 番目 array[i*n + j]

どうしても array[i][j] と記述したいんだー ってんならポインタ配列にでも

705 名前:デフォルトの名無しさん [2013/05/10(金) 00:39:13.37 ]
>>704
それで良いです
ありがとう

706 名前:デフォルトの名無しさん [2013/05/10(金) 13:44:44.96 ]


707 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 13:48:24.87 ]
内部結合
他のモジュール内部を直接参照したり、一部を共有する。
mt-net.vis.ne.jp/ADFE_mail/0322.htm

ってあるけどCで書くとどんな感じ?

708 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 14:45:53.05 ]
>>707
普通の関数コール



709 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 14:53:39.27 ]
>>708
それはデータ結合と違うの?
引数渡すのがデータ結合らしいけど>>708の関数コールもデータ結合と同じじゃない?
test(a,b,c);みたいに引数送るときに呼び出してるし

関数コールって引数渡さずに関数だけ実行?
よくわからん

710 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 15:00:15.67 ]
>>707
localtime
strtok

711 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 15:01:04.13 ]
データ結合:引数に値渡し
スタンプ結合:構造体を渡す
制御結合:制御にかかわる引数を渡す、渡す先のモジュールのif文なのどのflag
外部結合:別モジュールのグローバル変数を参照
共通結合:別モジュールのグローバルな構造体を参照

内部結合だけがよくわからん
>>708>>710の単語じゃわからない

712 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 15:11:05.86 ]
データ結合はファイルとかDBを介する奴じゃないの






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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