2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

スレを勃てるまでもないC/C++の質問はここで 22

1 :デフォルトの名無しさん:2014/05/13(火) 01:12:47.46 ID:BZ1B9xOm.net
スレを勃てるまでもない低俗なC/C++の質問はここでお願いします。

過去ログ
01 http://pc11.2ch.net/test/read.cgi/tech/1167476845/
02 http://pc11.2ch.net/test/read.cgi/tech/1178503366/
03 http://pc11.2ch.net/test/read.cgi/tech/1187521676/
04 http://pc11.2ch.net/test/read.cgi/tech/1221633708/
05 http://pc11.2ch.net/test/read.cgi/tech/1230516307/
06 http://pc11.2ch.net/test/read.cgi/tech/1231564903/
07 http://pc11.2ch.net/test/read.cgi/tech/1232983248/
08 http://pc12.2ch.net/test/read.cgi/tech/1235921779/
09 http://pc12.2ch.net/test/read.cgi/tech/1240022781/
10 http://pc12.2ch.net/test/read.cgi/tech/1242300936/
11 http://pc12.2ch.net/test/read.cgi/tech/1245059383/
12 http://pc12.2ch.net/test/read.cgi/tech/1248010352/
13 http://pc12.2ch.net/test/read.cgi/tech/1260842197/
14 http://pc12.2ch.net/test/read.cgi/tech/1269273471/
15 http://pc12.2ch.net/test/read.cgi/tech/1273368706/
16 http://hibari.2ch.net/test/read.cgi/tech/1279285647/
17 http://hibari.2ch.net/test/read.cgi/tech/1285115590/
18 http://hibari.2ch.net/test/read.cgi/tech/1291571263/
19 http://hibari.2ch.net/test/read.cgi/tech/1308106024/
20 http://toro.2ch.net/test/read.cgi/tech/1316013463/
21 http://toro.2ch.net/test/read.cgi/tech/1342285511/

962 :デフォルトの名無しさん:2014/12/28(日) 20:39:26.11 ID:tSKpZ2So.net
ちげーよ。setjmp/longjmpの始祖はLisp1.5のERRSETだ。死ね、アホウ。

963 :デフォルトの名無しさん:2014/12/28(日) 20:42:42.51 ID:SJYHrnZm.net
えっ?setjmp/longjmpの始祖はドラえもんのどこでもドアに決まってんじゃん(キリッ

964 : ◆QZaw55cn4c :2014/12/28(日) 21:18:16.03 ID:ea/rzsF3.net
>>963
あまり強調されていないようだがlongjmp が飛べる setjump には制限があってどこでもではない云々かんぬん

>>962
確認した、LISP1.5 ですでに例外があったわけだね、感謝する
http://lawker.googlecode.com/svn/fridge/share/pdf/languagesTheory.pdf 3.3章 "exceptions"

965 :デフォルトの名無しさん:2014/12/28(日) 21:22:56.70 ID:fHqPGp2q.net
どこでもドアだってどこでもと言っているけど制限はあるんじゃね?

966 :デフォルトの名無しさん:2014/12/28(日) 21:24:40.05 ID:SJYHrnZm.net
>>964
22世紀のテクノロジーを20世紀に実現しようとしたんだから制約があって当然(キリッ

967 :デフォルトの名無しさん:2014/12/28(日) 21:28:04.38 ID:kIpimFnn.net
>>965
まあ、無対策であんなもん売り出したらプライバシーもないし、犯罪の温床になるわな

968 :デフォルトの名無しさん:2014/12/28(日) 22:23:52.21 ID:ea/rzsF3.net
>>965
その場所自身に開いている、というのはどうだろうか?
一方は扉を引く、一方は扉を押す、ということになり対称性が崩れる
スライド式の上に巻き上がるか地面にずぶずぶ入っていく形だとうまくいくか?

969 :デフォルトの名無しさん:2014/12/28(日) 23:29:25.01 ID:a2va3SXh.net
>>957
if{
 if{}else{}
}else{
}

たぶん、こういう感じで、ネストが深くなるんだろう

970 :デフォルトの名無しさん:2014/12/29(月) 00:22:36.25 ID:Gl2B1r0m.net
無効ならすぐにreturnでお引き取り願う んだから else はいらないんじゃね。
{
 if(ptr==NULL) return;
 ・・・;
}

これなら
{
 if(ptr!=NULL)
 {
  ・・・;
 }
}

こうなるわけだし。

>>951が言っているのはこういうことだろうね。
{
 if(ptr!=NULL)
 {
  if(a)
  {
   ・・・;
  }
  ・・・;  //←ここの存在の有無が分かりにくい
 }
}

971 :デフォルトの名無しさん:2014/12/29(月) 01:29:39.14 ID:w4v+nC+a.net
その次の行の閉じブレースの次の行じゃね

972 :デフォルトの名無しさん:2014/12/29(月) 08:58:29.73 ID:GU9lRZUk.net
>>970
たしかに「構造的」ではあるんだけどねぇ...
ptr が NULL ならすぐに呼び出し元へ戻る、という単純な流れでも、わざわざ if ブロックの外側を回り込まないとわからないんだよね
「if(ptr==NULL) return;」なら、眺めただけで直感的に理解できる

それならむしろ俺は928氏に同調するな

{
 if(ptr==NULL) goto ERR;
 ・・・;
 ERR: ;
 return;
}

この処理がスパゲティとは思えないけど、まぁ主観によると言われれば"それまで"か?

973 :デフォルトの名無しさん:2014/12/29(月) 09:53:34.43 ID:R9uwHG6j.net
>>970
> 無効ならすぐにreturnでお引き取り願う

それしちゃいかんと言う話
>>947 辺りから読み直しなよ

974 :デフォルトの名無しさん:2014/12/29(月) 10:53:50.17 ID:w4v+nC+a.net
>>973
MISRA-Cではそうなってるけど、却って分かりにくくね?という話だろ今は

975 :デフォルトの名無しさん:2014/12/29(月) 11:27:17.28 ID:S6a2iGl8.net
>>974
そうだよ。

976 :928:2014/12/29(月) 12:09:22.53 ID:88bYnTsn.net
なんかgotoでスレが伸びてるw
>>972
後始末処理が煩雑になるならgoto ERR;、ならないなら即return;でやってます。

977 :デフォルトの名無しさん:2014/12/29(月) 12:31:14.75 ID:90FPncP0.net
MISRA-Cを使用するようなところでは、関数の戻り値、エラーの返しかたも
統一した方法が規定されているので
if (hoge) return;
等という事はあり得ないのだよ。

978 :デフォルトの名無しさん:2014/12/29(月) 12:40:24.54 ID:9Etq4Oht.net
なんかレス番飛んでる

979 :デフォルトの名無しさん:2014/12/29(月) 18:15:19.55 ID:Gl2B1r0m.net
>>972
正常処理した場合でも ERR: ; を通るのがちょっと嫌だなと思う。
昔なんかでgoto は使うなってのがあったと思うんだが、
そのためかgotoは避ける習性がついてる。
自分もifの中が長くなるか、ネストが深くなりそうなら 「if(ptr==NULL) return;」 って返しちゃうけど。

>>973
>>935あたりから読み直しなよw

>>978
goto の仕業です

980 :デフォルトの名無しさん:2014/12/30(火) 11:43:34.75 ID:oELHqRa9.net
C言語で特性要因図を描きたいのですが、直線や傾線の描き方がわかりません。
参考になる書籍やサイトを教えて下さい。

981 :デフォルトの名無しさん:2014/12/30(火) 15:30:14.23 ID:4OrPIxQI.net
C言語には絵を描く機能はありません

一応、WindowsであればWin32APIを使えばいいし、
他のOSならその環境で提供されて居るライブラリを使えば可能です

でも、絵を描く系のアプリは、描画ライブラリが標準で提供されている言語
を使った方がよろしいかと

982 :デフォルトの名無しさん:2014/12/30(火) 16:57:21.27 ID:oELHqRa9.net
ありがとうございます。

983 :デフォルトの名無しさん:2014/12/31(水) 10:03:42.26 ID:BzIgpzQu.net
>>947
switch使ってreturnが複数あるのはいかんのかえ

984 :デフォルトの名無しさん:2014/12/31(水) 21:22:22.92 ID:JDflDXLg.net
misraじゃダメだろ、breakで一旦絞ってからじゃないと。

985 :デフォルトの名無しさん:2014/12/31(水) 21:23:15.11 ID:MAv4eoG4.net
あかん

986 :デフォルトの名無しさん:2014/12/31(水) 21:36:55.32 ID:sJPMMaom.net
>>929
これからは、カッコマンと名乗りなさい

987 :デフォルトの名無しさん:2015/01/01(木) 18:44:24.90 ID:5u2mylLc.net
cやc++などでも使うpow()関数の中身を見たいのですがどこで見れるのですか?
調べてみても使い方しか見つかりませんでした
中身が気になって年も越せません、どなたかお願いします

988 :デフォルトの名無しさん:2015/01/01(木) 18:48:22.95 ID:AdVpW5lB.net
ビルド済みでなくソースコードを配布しているコンパイラ。

989 :デフォルトの名無しさん:2015/01/01(木) 20:40:47.43 ID:kAzVMxFU.net
>>987
年越してんだろ
glibc

990 :デフォルトの名無しさん:2015/01/01(木) 21:06:51.24 ID:3W20v7ol.net
あと364日

991 :デフォルトの名無しさん:2015/01/02(金) 07:53:25.54 ID:Kr2J2p4W.net
double pow(double x, double y) {return exp(log(x) * y);}
// 但し、xが負の場合などのケアはしてないw

992 :デフォルトの名無しさん:2015/01/02(金) 08:54:44.09 ID:7UbCEqjn.net
glibcならこの辺り

https://sourceware.org/git/?p=glibc.git;a=blob;f=math/w_pow.c

https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/ieee754/dbl-64/e_pow.c

993 :デフォルトの名無しさん:2015/01/02(金) 20:27:25.41 ID:bUqHV81T.net


994 :デフォルトの名無しさん:2015/01/02(金) 20:39:22.13 ID:olFjF83r.net
すごく複雑ですね
ゆっくりと読んでみます
ありがとうございました

995 :デフォルトの名無しさん:2015/01/02(金) 23:04:31.55 ID:wsXrG2FF.net
>>994
基本は>991だよ。それに負数の時の処理などが付け加えられて>992のようになっている。

996 :デフォルトの名無しさん:2015/01/03(土) 17:10:20.99 ID:KCWAqhUR.net
https://sites.google.com/site/alcon2013prmu/development
上のサイトの開発手順を参考にして画像処理を行えるプログラムを書きたいのですが、
サンプルソースプログラムのどこをどのように変えればいいのか、
そもそも何から始めればいいのかすら分からず困っています
もし何か分かる方いたら教えて下さるとありがたいです

997 :デフォルトの名無しさん:2015/01/03(土) 17:14:14.23 ID:Cj8CgFQv.net
こんなところで聞くんじゃなくて
ちゃんとわかる人に教えてもらえ

998 :デフォルトの名無しさん:2015/01/03(土) 17:15:47.86 ID:KCWAqhUR.net
>>997
どこで聞けばいいですかね?
分かる人がいる場所が分からなくて困ってます……

999 :デフォルトの名無しさん:2015/01/03(土) 17:53:09.91 ID:evDYmhLz.net
>>998
書かれていることが分からないなら
書かれていることを理解する勉強から始めればいいと思うよ。

1000 :デフォルトの名無しさん:2015/01/03(土) 17:56:11.07 ID:zYvZyTAZ.net
>>998
http://ja.stackoverflow.com/

1001 :デフォルトの名無しさん:2015/01/03(土) 18:05:12.55 ID:KCWAqhUR.net
>>999
了解です!

>>1000
ここで聞けば良い感じですかね
ありがとうございます!

1002 :デフォルトの名無しさん:2015/01/04(日) 00:38:53.48 ID:Wz/5DFfo.net
MISRA-Cでは、goto,continueなどは禁止だけど、

Linuxでは、goto ERR;で関数の最後に、
エラー処理をまとめる。
Linusもそれを推奨している

1003 :デフォルトの名無しさん:2015/01/04(日) 01:31:27.96 ID:EO5g9rYs.net
http://www.nurs.or.jp/~sug/soft/super/goto.htm
によると
「Linux デバイスドライバ」(Alessandro Rubini 著、O'Reilly ジャパン刊)
で推奨されているみたいだね。

デバドラとかカーネルとか書く人はアセンブラにも通じていて
goto(jump)には抵抗ないのだろう

1004 :デフォルトの名無しさん:2015/01/04(日) 10:51:52.71 ID:YFWQwx9h.net
まあ教条主義者はgotoを絶対悪と決めつけて無条件に排斥するからね
使い方次第で、分かりやすいプログラムにも、分かりにくいプログラムにも、どちらにもなる、ということを理解できないんだろう
K&Rですら、gotoの有効な例をあげて、慎重に使えば問題ない、という姿勢だったとおもう

1005 :デフォルトの名無しさん:2015/01/04(日) 11:10:52.14 ID:EjbbMTMU.net
>>1004
> K&Rですら、gotoの有効な例をあげて、慎重に使えば問題ない、という姿勢だったとおもう

当たり前だろ、常に有効でないと思ってたなら、goto 文実装してないだろ

1006 :デフォルトの名無しさん:2015/01/04(日) 18:33:37.63 ID:jxWL1hkj.net
>使い方次第で、
その使い方に問題があったりするから、
gotoばかり使うスパゲッティとか
そういうコードを排除しようと誰かが提唱する
それを聞いた誰かがすばらしいと崇拝して
おそらく最初に提唱した人の意図とは違う意図で他の人らに広める

MISRA-Cだって慎重にすれば問題ないものでも、慎重に使えない人がいるからそういうルールを作るわけだろ
まぁそういう禁止事項はお仕事ならば慎重さよりスピード重視だろうし
スピード重視した結果スパゲッティになることを防ぐ目的もあるだろう

1007 :デフォルトの名無しさん:2015/01/04(日) 22:31:04.11 ID:AZoVKcHR.net
教えてください。
基底クラスのコンストラクタによって生成されるメンバを
継承したクラスで使うことは可能でしょうか。


例:
class A{
int a; // このaはAのコンストラクタで設定される
A( HOGE Data); // あるデータによってaの値が変わる
}

class B : public A{
B( A A::a ); // Aのメンバをコンストラクタで使いたい
}

よろしくお願いします。

1008 :デフォルトの名無しさん:2015/01/04(日) 22:34:28.49 ID:AZoVKcHR.net
コンストラクタでやろうと考える時点でおかしいんですかね・・・

1009 :デフォルトの名無しさん:2015/01/04(日) 22:47:01.26 ID:kU4tFNpU.net
>>1007
こういうのならば出来そう‥
http://codepad.org/mWOdu8b7

1010 :デフォルトの名無しさん:2015/01/04(日) 22:47:16.34 ID:jxWL1hkj.net
Bのコンストラクタでは基底クラスAのメンバは存在している。

1011 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1011
279 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★