[過去ログ] 【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
6: デフォルトの名無しさん [sage] 2016/11/07(月) 09:36:19.79 ID:dSd+kVnH(2/2) AAS
あ、初期化子か
インデントがないから見間違えた
45: デフォルトの名無しさん [sage] 2016/11/10(木) 14:09:10.79 ID:gEXUDT4B(2/5) AAS
この手の人は、具体的な実装例を見さえすれば、すぐさま疑問が解消されるんだよ
>>4343(3): 40 [sage] 2016/11/10(木) 14:01:09.75 ID:8ULjF/bN(5/8) AAS
>>41
>再帰呼び出し後に書く recurse(i+1); printf("%d ", i);
>と
>書いてから再帰呼び出し printf("%d ", i); recurse(i+1);
>の違いとか
これはこの本の次のページにも書いてありました。
書いてから再帰呼び出しの場合は昇順(1,2,3,4,5,6~)になりますね。
相変わらず曖昧な理解なんですが、
どのiの場合もi=10に達するまではrecurse(i+9)までしか実行されていなくて、
printfは実行されていない待機中の状態だと考えればいいのでしょうか?
それでi=10でif条件文を抜けて、i=9からi=0まで数字が大きい方から順番にまだ実行していなかった
printfを降順で実行していくのでしょうか?
この本(独習C)には
> 引数の値が10に達すると、recurse()の再帰呼び出しから戻りはじめます。関数は、呼び出し元に戻る
>ものなので、recurse()は直前の呼び出し元に戻り、そこでprinf()を文を実行して「9」と表示し、
>さらに前の呼び出し元に戻ります。こうしてrecurse()は、今度は「8」と表示します。 その後も同じ>プロセスが繰り返され、すべての呼び出しから戻った段階でプログラムが終了します。
実行される順番が、最初のi=0からではなく、直近のi=9からなのはなぜなのでしょうか?
でも「待機する」だとか
なんで逆順になるのか分からないとか
言っているが
スタックフレームさえ知れば全ての疑問は解決だし
C/C++するのにスタックフレームさえ知らない状態だと
このさき困難だろう
197: デフォルトの名無しさん [sage] 2017/01/05(木) 19:26:42.79 ID:ivHnG5Le(1) AAS
int が 24bit ってダメなんだっけ?
405: デフォルトの名無しさん [sage] 2017/02/11(土) 19:53:33.79 ID:7HNC8OW9(1) AAS
>>404違和感がでるよね。
会社でこれがうちのスタイルって強制され、それになじむと
そうじゃないスタイルのものは気持ち悪いって感じるようになった
>for(i=0 ; i <100000000 ; i++);
最近のコンパイラはまじめにやらないで、コンパイル時にiは使ってないあるね
処理省くニダってして実行コード生成してなさそうな気がするが。
488(2): デフォルトの名無しさん [sage] 2017/02/24(金) 09:53:13.79 ID:0sr6h+Re(1) AAS
失敗するまでmallocやnewを繰り返せばええんや
509: デフォルトの名無しさん [sage] 2017/03/06(月) 07:57:48.79 ID:NqblWJNK(1/2) AAS
#define ChannelBlend_SoftLight(A,B) ((uint8)((B < 128)?(2*((A>>11(1): デフォルトの名無しさん [sage] 2016/11/06(日) 22:58:02.60 ID:dU5z27As(1) AAS
エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
◆ソースのインデントについて
半角空白やTABでのインデントはスレに貼ると無くなります。
そのため、アップローダーに上げるのも手ですが直接貼る場合は、
全角空白か に置換すると見栄えだけはよくなります。
【アップローダー】(質問が長い時はココ使うと便利)
外部リンク:codepad.org (コンパイルもできるし出力結果も得られる[]privateをチェック)
外部リンク:ideone.com (時間帯によってはcodepadが重い事があるのでここも利用)
前スレ
【初心者歓迎】C/C++室 Ver.99【環境依存OK】
2chスレ:tech
)+64))*((float)B/255):(255-(2*(255-((A>>1)+64))*(float)(255-B)/255))))
このマクロの
(2*((A>>1)+64))
この部分なんですが
なんで(A+128)じゃないんですかね?
526(1): デフォルトの名無しさん [sage] 2017/03/30(木) 07:50:43.79 ID:GtG5BmiK(1) AAS
getDataの結果を修正したいのだから
杓子定規にgetDataの戻りにconst付けるのを止めればいいのではないか
そう言えばC++17(ドラフト)もstring::dataの戻りが非constに修正されたような
550(2): ◆QZaw55cn4c [sage] 2017/04/01(土) 07:47:47.79 ID:1ZzXEpHO(1/2) AAS
>>546サイズが無限にのびるかもしれないものをコピーするなんてだめだよ
昔はね,構造体はポインタを介してしかつかえなかったんだよ
969: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2017/07/15(土) 21:46:08.79 ID:18nkvKxh(4/7) AAS
お使いの32ビット環境ではintとint*が同じサイズだから、キャストされれば代入できる。sizeof(int) == sizeof(int*)。
しかし、64ビット環境では動かなくなるかもしれない。ポインター型を無視した良くない書き方だ。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.046s