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


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

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



1 名前:デフォルトの名無しさん [2011/09/15(木) 00:17:43.25 ]
スレを勃てるまでもない低俗なC/C++の質問はここでお願いします。

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

577 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 12:40:26.78 ]
こういう命名ってC++では合法ですか?

namespace _hoge {
struct _fuga {
void _func(void);
};
}

578 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 13:02:26.24 ]
>>577
×namespace _hoge {
○struct _fuga {
○void _func(void);
先頭にアンダースコアはオススメしない

579 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 19:47:17.24 ]
これってどういう意味でだめなんだっけ?
> ×namespace _hoge {

ネームスペース名って先頭アンダースコアだめなんだっけ?


580 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 20:04:49.94 ]
>>579
グローバルスコープが禁止

581 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 20:43:27.29 ]
どうもです。
じゃあ入れ子になってれば可能なんですな。

582 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 12:57:48.48 ]
文字列の配列を10個用意して最初の文字列にstrcpyでデータをコピーしたいのですがエラーになってしまいます

char* p[10];
p[0] = "Spring";
strcpy(p[0],"Summer");

一体どこをどう直せばよいのでしょうか?

583 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 13:03:26.26 ]
std::string p[10];

p[0] = "Spring";
p[0] = "Summer";

584 名前:582 mailto:sage [2012/02/21(火) 13:45:23.18 ]
ありがとうございます、string型でやってみます。
ちなみにstrcpyを使うのは間違いなのでしょうか?
何が間違いなのかよく分からないのです



585 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 13:51:30.39 ]
メモリについてもう少し勉強しなさい



586 名前:582 mailto:sage [2012/02/21(火) 13:55:37.67 ]
分かりました、もう少し勉強します

587 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 15:28:01.01 ]
浮動小数の比較で

a=1.0;
b=1.0;
if ( a <= b )

みたいにするのは、やめたほうがいいですか?
a=1.0 とすると実際は a=1.00000000001 みたいになってて <= の評価が
うまくいかない可能性を危惧しています。とりあえず今のところ問題なさそうなんですが。
Fortranやってたときは、よくこんなふうにやってました。

eps=1e-30;
a=1.0-eps;
b=1.0;
if ( a <= b )

588 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 15:30:17.33 ]
場合による

589 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 15:45:14.64 ]
問題出るまでそのまま使っとけ。
問題あったら任意精度や整数計算へおきかえればいい。
精度が64、128ビットと固定されていればどれだけビット数上げても誤差が出る。
その初めに引いとくのは駄目だろ。もしaが負の方向へ小さかったら間違える。

590 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:19:04.96 ]
一致じゃなくて大小関係なんだろ?
単に if( b > a) でいいのでは…
一致が必要なときは、確かに、EPSILON系の定数を使うけど。


591 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:29:00.68 ]
厳密には大小でもダメだよ
計算機上の値では0 < xが真になる場合でも真値では0 < xが成立しない事は普通にある

592 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 17:10:03.20 ]
vector<bool>に限らず特殊化されたテンプレートクラスを
特殊化しないで使いたい場合はどうすればいいんですか?

593 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 17:36:17.81 ]
そんなことはできない

594 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 03:37:46.38 ]
具体的に何がしたいんだろう、ちょっと読めない

595 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 05:19:34.45 ]
hoge<bool> という特殊化されたオリジナルのテンプレートがあって、
それを、hoge<int>でも使いたいとか、そういうことかな?

他はまったく思いつかない。




596 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 07:25:45.13 ]
何でそうしたいか理由が全く分からん。やるならメンバにboolだけ持たせた構造体を定義してそれを渡すとか?

597 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 13:27:55.80 ]
最適化などのために特殊化されてるけど
他のコードと互換性がなくて仕方なく非特殊化バージョンを使いたいなーということはあるでしょ
bool参照しか受け取らない関数にvector<bool>の要素渡せないとか


598 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 16:53:20.32 ]
質問させていただきます。PGを書く問題ではないのですが、
「ソートプログラムとデータ構造について
具体的なソートプログラムの名前をあげ、
とのようなデータ構造(配列、単方向リスト、双方向リスト、循環リストなど)が
なぜ適しているか述べろ。

が分かりません!教えてください

599 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 17:39:01.94 ]
丸投げは宿題スレ行け

600 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 00:31:23.68 ]
これは簡単なようでいて、こういうのに強くないと解けない 宿題スレが適当

601 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 10:11:12.67 ]
宿題スレでも扱いが酷いな。テンプレ無視だからしょうがないけど

まずソートの種類を調べるくらいは自分で出来るんじゃない?
それからそのソートに適したデータ構造と理由を聞けば…

ところで循環リストが適してるソートなんてあったっけ?

602 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 11:07:15.84 ]
循環ソート

603 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 00:20:56.14 ]
c++ってchar使うの?
文字列はstringを必ず使うべきなの?

604 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 00:33:04.28 ]
stringはcharがもとになっている。資源の無駄を減らすならchar

605 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 07:49:56.89 ]
純粋に高級言語として使うなら「1文字の文字」を扱うときぐらいだが
C++には高級アセンブラたるC言語の後継としての役割もあるから無いと困る
組み込み系はもちろんだし、そうでなくてもAPIとかはchar[]ベースだったりする



606 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 12:18:11.06 ]
charを要求するライブラリを呼ぶ限り、charは不滅
もちろん、charを極力廃すような書き方をすることは可能だろう

607 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 20:24:47.88 ]
C++のステートパターンの骨組みというか
サンプルプログラムを教えてください。

608 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 23:02:30.36 ]
>>607
https://www.google.co.jp/

609 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 00:00:49.96 ]
struct A{
  int a;
  struct B{
    static int& a;
  };
  int f(){
    a = 10;
    B::a = a;
  }
};
int main(void){
  A a;
  a.f();
}
で,
undefined reference to `A::B::a'
とエラーが出ます.
どうやって回避すればいいのでしょうか.

610 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 00:08:44.64 ]
>>609
そもそも、なんで構造体の中から外を知ることができると思い込んだの?

611 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 00:27:02.08 ]
>>610
確かに言われて見れば・・・
とりあえず構造体のネストを消すように作り直してみます.

612 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 01:24:49.10 ]
>>609
参照は定義時に初期化しなければならない。まあやりたかったこととは違うだろうが。

struct A {
 int a;
 struct B {
  static int& a;
 };
 int f(){
  a = 10;
  B::a = a;
  return 0;
 }
};

A x;
int & A::B::a = x.a;

int main(void){
 A a;
 a.f();
}

613 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 21:24:25.17 ]
C++のステートパターンの骨組みというか
サンプルプログラムを教えてください。

614 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 21:26:51.56 ]
>>613
>>608

615 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 22:15:48.44 ]
>>613
ttp://codepad.org/zJKMXKy9
概念を理解できてれば多言語のソースでもなんとなく読めるはずだがな



616 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 22:48:35.81 ]
>>615
本質的なところじゃないけど、deleteしようぜ

617 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 13:51:17.47 ]
構造体内部に関数って入れられるんだっけ?

618 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 14:14:55.96 ]
C++だからstructで定義するものもクラス

619 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 20:12:58.72 ]
C++だとunionもクラスなの?

620 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 20:42:27.78 ]
ポリモルフィズムの概念がない

621 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 15:29:17.65 ]
ポインターについて質問です。

*p++

>この文では最初にp をインクリメントし、次に新しいメモリアドレスにある
>値を得ます。

と、いう説明がありますが、"次に新しいメモリアドレスにある値" の意味が
わかりません。 仮にp に格納されているアドレスが100番地 だったとすると、
それが+1(char の場合) されて101 となるだけではないのでしょうか。

622 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 15:54:39.35 ]
>>621
いいえ違います

623 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 17:00:17.86 ]
>"次に新しいメモリアドレスにある値"
その例では、101にある値。

624 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 17:02:07.88 ]
>>622
ではどういう動作をするのでしょうか。詳しくお願いします。

625 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 17:13:32.58 ]
>>623
なんとなくわかりましたが、101番地にある値が"得られる" というのが
いまいちしっくり来ません。 ひょっとしてこれは、ポインターが+1 されて、
それ以降、そのポインターを使ったときは、101 番地のデータが読める、
という意味で"得られる" と書かれたものだと解釈してよいでしょうか。



626 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 17:30:40.63 ]
>>625
演算子の優先順位が
 後置インクリメント(++) >> 前置インクリメント(++) >> 間接参照(*) >> 乗算(*)

この場合は
 *p++ = *(p++)

メモリ内容が以下だとすると
ADDRESS VALUE
0x00401000 0x0123
0x00401004 0x0456
0x00401008 0x0789
0x0040100C 0x0ABC

DWORD* p
p = 0x00401004   *p は 0x0456
p++
p = 0x00401008   *p は 0x0789

627 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 17:33:49.60 ]
あ、最後のp = 0x00401008
の "=" は代入じゃなくて p が指す物を示す

628 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 19:02:19.38 ]
>>626
具体的な例を挙げてくださり、ありがとうございます。
演算子の優先順位を忘れていました。カッコをつけるとわかりやすいですね。

ただ、残念ながらおっしゃっている事がまだ理解できません。
*p++ ・・・この文が、何かの変数や関数への代入文に使われているのなら、
「ポインターを+1 されたアドレスのデータを何かに代入しているんだな」 と
思えるのですが、参照している教科書には *p++ とだけしか書かれておらず、
何かに代入しているわけではないのです。
だったら * は不要で、 p++ だけでいいのでは? と思います。

ど素人の低レベルな質問で意味不明かもしれませんが、なにかヒントを下さい。

629 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 19:07:33.60 ]
>>628
前後のコードもしくは文章plz

630 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 19:21:45.24 ]
>>629
独習C から、該当部分を引用します。

>ポインタそのものに対してだけでなく、ポインタが指しているオブジェクトに
>対してもインクリメント演算子やデクリメント演算子を使用する事ができます。
>しかし、ポインタが指しているオブジェクトをインクリメントしようとするときには
>注意してください。 例えば、値1 の整数を指しているp があるとします。
>次の文を実行するとどうなるでしょうか。
>
> *p++
>
>予想は当たったでしょうか。この文では最初にp をインクリメントし、次に
>新しいメモリアドレスにある値を得ます。ポインタが指しているものを
>インクリメントするためには、次のような式を使わなければなりません。
>
> (*p)++
>
>かっこをこのように使うことによってp が指している値をインクリメントすることが
>できます。
>また、関係演算子を用いれば、2つのポインタの値を比較する事ができます。
>もちろん、ポインタの比較は、それが相互に関連している、つまり、同じ型の
>オブジェクトを指しているような場合に、初めて意味を持ちます。

以上該当部分です。何か重要な情報がありますでしょうか。

631 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 19:35:48.07 ]
>>630
書いてるまんまだろ

参照先をインクリメントしたいときは (*p)++ と書け
*p++ と書いたらポインタ自体をインクリメントすることになる
って言ってるだけ

*p++ のコード自体に筆者の言いたい意味があるわけじゃない

632 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 21:05:42.47 ]
>>631
>*p++ のコード自体に筆者の言いたい意味があるわけじゃない

なるほど。ここまで読み進めてきて、はしょった表現がなかったものですから、
勘違いしていたようです。 どうもありがとうございました。

633 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 21:10:08.38 ]
*p++ って、もはや定型的な書き方なのさ。

634 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 22:44:18.36 ]
>>630
>> *p++
>>
>>予想は当たったでしょうか。この文では最初にp をインクリメントし、次に
>>新しいメモリアドレスにある値を得ます。

「インクリメント前のメモリアドレスにある値を得た後、pをインクリメントする。」だろ?

635 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 18:34:04.05 ]
なんだか勘違いしそうな説明が続いてるなw

例えば、
int a[4] = { 0,1,2,3 };
int* p = a;

int n = *p++;
int m = *(p++);

ってすると、n = 0, m = 1 になるんだぜ。
上の説明だけでは納得できないだろ?w





636 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 19:22:47.06 ]
>>635
いや、大体わかったつもりです。

int n = *p++
// 配列a の先頭番地のデータ(0) をn に代入し、その後インクリメントされる。

int m = *(p++)
// p は+2 されているので、データ(1) がm に代入され、その後インクリメント。

これらの文が処理された後、p はデータ(2) の番地を指している。

・・こういう解釈であっていますよね。

637 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 19:32:19.53 ]
>>636
nもmも式評価のときは*pで++は*よりも優先順位が高いから
結合するのはどちらもpだけってことだろ?

638 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 19:42:30.17 ]
>637
すいません、本当に素人で、釣りをしているわけではありません。
直球ど真ん中のマジレスでお願いします。
そこであえて質問ですが、"結合" とは、この場合どういう意味でしょうか。

639 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 19:44:20.68 ]
疑問に思ったところは6章のポインタで
>>636のいいたいインクリメントについては2章制御文その1でやってるから大丈夫だろ
ってかインデックス見ようと翔泳社見たら独習C絶版なのな
独習C++ってC読んでること前提で書かれてなかったっけ?

640 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 19:57:11.02 ]
>>638
その演算子がある項に作用すること

後置インクリメント++の場合、単項演算子で結合性は右から左
また優先順位は参照演算子*よりも高いので
この場合(*p++)は++の左にある単項、pに作用する
後置インクリメントは評価後にインクリメントされるので
この式(*p++)自体の結果は*p

これでいい?

641 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/01(日) 20:49:01.75 ]
>>640
160km/h のストライク。よくわかりました。今後ともよろしくお願いします。

642 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 20:54:47.31 ]
>>639
いや、絶版じゃないだろう・・・・・第3版のことか?
books.shoeisha.co.jp/book/b72093.html

独習C++が独習Cを読んでいる(C言語は既習である)ことを前提に書かれているのはその通り。

643 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 21:02:35.80 ]
>>642
おおスマン
見落としていた

644 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 03:19:18.51 ]
昨日からC言語始めたプログラム初心者です

四捨五入のプログラムで
例えば1.666を第3位で四捨五入すると1.670000って表示されるんだけど
これを1.67と表示させるにはどうやったらできますか?

645 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 03:24:44.66 ]
printf("%.2f",1.67);



646 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 03:49:55.45 ]
>>645
サンクス

647 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:05:15.76 ]
>>644
つ[ "%g"]

648 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 17:20:56.61 ]
CLRのコンソールのメイン関数って、Microsoft独自のモノですか?
それとも、C++の新規格のメイン関数なのですか?

#include "stdafx.h"

using namespace System;

int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
return 0;
}


649 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 18:25:56.69 ]
>>648
該当スレできけば?
くだすれC++/CLI(初心者用)part2
toro.2ch.net/test/read.cgi/tech/1268613679/

650 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 18:34:32.79 ]
>>648
そもそもnamespace Systemなんて標準のC++にはないよ。

651 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 18:50:39.50 ]
CLIで探せばよかったのですね。Thanx!

652 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 20:26:16.99 ]
c++簡易ブラウザーを作りたい
boost::asioでソケット周りできた。クッキーも仕様書みながらある程度できた。
javascriptはECMAScriptと戦わないとだめなのか?

653 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 20:41:16.75 ]
モジラやググールのを使え

654 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 21:04:59.82 ]
V8が面白そうだ。先は長いな…

655 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 00:36:28.03 ]
DOMをやるのかやらないのかでだいぶ違う
ブラウザの進化の過程をたどるか、あるいは新発想のアーキテクチャでいくか。
ある程度の完成物を狙うなら、いったん、V8なり、JSCなりを呼ぶ実装がいい
そもそも、JavaScriptエンジンのインタフェース自体から、学ぶ点がある



656 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 16:48:33.44 ]
ECMAScript - Wikipedia
ja.wikipedia.org/wiki/ECMAScript



657 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:40:27.10 ]
int a=ランダム値;
bool flag;
if(a==1 || a==42 || a==145)flag=true;

↑こんな感じのことをやりたいんですが、
(a==1 || a==42 || a==145) ←ここのとこを簡単に書く方法ってないですかね?
例えば
(a==(1 || 42 || 145)) みたいな。(これじゃ当然無理ですけど)

何か方法があれば教えて下さい。よろしくお願いします。


658 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:46:14.83 ]
bool check(int const a)
{
static const int checkers[] = {1, 42, 145};
for (int ic = 0; ic < sizeof(checkers) ? sizeof(* checkers); ++ic) {
if (a == checkers[ic]) return true;
}
return false;
}

bool flag = check(a);

659 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 22:09:09.10 ]
最終的に吐き出されるバイナリが、結局、
(a==1 || a==42 || a==145) みたいなことになるんだろうから、
(a==1 || a==42 || a==145) で十分に簡潔と言えるんじゃなかろうか。

もちろん、そんなクジみたいな抽選をやたらとあちこちで実行してるなら、
全体的に読みやすいように、書き様はあると思うが。マクロとかで。

660 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 22:10:54.95 ]
こうなら書けるな 発想の転換の一助になれば。

flag=false;
select(i){
case 1: case 42: case 145: flag=true;
}

661 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 22:25:07.23 ]
<< とか使う

662 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 23:48:08.59 ]
bool operator,(〜)とか使う

663 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 00:10:01.79 ]
bool f(int a){
struct ck{ck(int a):v(a),t(false){}ck&operator,(int a){t=t||a==v;return*this;}operator bool(){return t;}int v;bool t;};

return ck(a),1,25,142; }

664 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 00:23:45.95 ]
可変長引数でチェック関数作るとか

665 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 08:09:44.01 ]
flag = (a==1 || a==42 || a==145);
が、一番シンプルに見えるわけだがw



666 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 14:31:40.48 ]
Perl6のJunctions風の何かを作るといいのかな

667 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 21:22:35.70 ]
D言語のlazy 相当の機能が有ればなあ

668 名前:543 mailto:sage [2012/04/18(水) 22:11:53.62 ]
0〜999の番号を10000の要素にランダムに割り当てるときに
各番号が10回ずつ(各番号が同じ回数という意味で)出てくるように割り振りたいのですが
なにかいい方法ありませんか?

669 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 22:16:13.58 ]
vectorに突っ込んでrandom_shuffle

670 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 22:20:46.95 ]
>>669
そのような関数があったんですね。勉強になります!
ありがとうございました。

671 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 22:28:39.71 ]
質問です
C言語でマイクから入力した音声を送信する方法
もしくはマイクから入力された音声がどこに保存されているかを教えてください


672 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 22:43:31.86 ]
環境も書かずになんて間抜けな質問を……

673 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 23:00:22.03 ]
失礼しました
環境はbcpadです

674 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 00:00:32.77 ]
WindowsならmmsystemだからWin32APIスレで聞いた方がいいだろ

675 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 06:51:33.03 ]
>>674
情報ありがとうございます!



676 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 14:52:44.05 ]
コマンド・ライン引数でargc と argv というのが伝統的に使われている
そうですが、それぞれの語源(何の略) か、教えてください。

677 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 15:05:36.01 ]
argument count value

678 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 15:26:44.81 ]
>>677
ありがとうございます!


679 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 21:37:51.52 ]
VC++をつかってC言語でLifeGameを書こうとしてみたのですが、

680 名前:デフォルトの名無しさん mailto:sage [2012/04/20(金) 01:33:52.49 ]
セルがモニタから飛び出して勝手に増殖し出してしまって、

681 名前:デフォルトの名無しさん mailto:sage [2012/04/20(金) 02:54:49.21 ]
|....,,__
|_::;; ~"'ヽ
| //^''ヽ,,)
|  i⌒"
| ∀`) < 誰もいない きのこるならいまのうち
|⊂
| ノ
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
      |( ´∀`) < きのこ のこーのこ げんきのこ ♪
      |(ノ   |つ
      |     |
     ⊂ _ ノ
       ""U
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
     (´∀` )| < エリンギ まいたけ ブナシメジ ♪
    ⊂|  (ノ |
      |     |
      ヽ _ ⊃
      .U""
|
| ミ
| ミ  サッ!
| ミ
|

682 名前:デフォルトの名無しさん mailto:sage [2012/04/20(金) 03:00:54.75 ]
罠を張って待っていることも知らずに、

↑なーんてなことを書き出してしまって、

683 名前:デフォルトの名無しさん mailto:sage [2012/04/20(金) 04:06:50.55 ]
【そりゃないよドコモさん】ドコモが日本通信に提訴された経緯
weekly.ascii.jp/elem/000/000/084/84599/
 ドコモは「必要な費用」と説明したとのことですが、その費用はそもそも算定式に含まれているはず、
というのが日本通信側の主張です。
 このため日本通信が差額の支払いを一時停止したところ、ドコモ側は「接続を切断する」と回答。
結果、ユーザーへの影響を考慮して、日本通信側はドコモ側の要求どおりの支払いを続けている、
というのが今の状況です。

684 名前:デフォルトの名無しさん mailto:sage [2012/04/24(火) 06:23:00.54 ]
宿題で出されたこの問題が分からないのですが、誰か教えてくれませんか。

1〜9までの連続する数字の間に和・差・積の演算子(+, -, *)を適当に入れて、
式の値がちょうど 100 となる例を挙げよ(10とおりだけ書け)。

たとえば、
 1 + 2 * 3 * 4 * 5 + 6 * 7 - 8 * 9 = 91
というような計算をする。ただし、この例では式の値が91となるので答えではない。

685 名前:デフォルトの名無しさん mailto:sage [2012/04/24(火) 06:33:39.44 ]
このスレに何の関係が



686 名前:デフォルトの名無しさん mailto:sage [2012/04/24(火) 06:35:50.34 ]
ごめんなさい、宿題スレに書き直してくるので無視してください

687 名前:デフォルトの名無しさん mailto:sage [2012/04/24(火) 06:55:17.27 ]
eval() を実装しろという問題だな

webサービスを呼ぶ、でもいい

688 名前:デフォルトの名無しさん [2012/04/25(水) 00:26:53.55 ]
csvのデータを読み込み、このデータセットの平均値Ave を求めて
標準出力するCプログラムを書きたいのですがどうすればいいですか?

689 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 00:36:54.63 ]
まず深呼吸します

690 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 07:58:46.21 ]
宿題レベルの質問に見えるが、csvに何が詰まってるかによるな(22,2Cの扱い)。

出題者が、データはこれな。って言ってきてないか。

691 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 14:26:18.67 ]
図書館でプログラミング作法を借りてくる

692 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 16:16:06.77 ]
C言語で、できるだけ簡単な文法だけを用いて、「ある数列から重複している値があれば取り出す」という関数を作りたいのですが、どうすればいいのですか?

693 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 16:36:07.14 ]
>>692
数列は長いか?(数万件)
数値範囲が予測できるか?
範囲が狭いか?(1~10など)
小数点以下も必要か?
で方法が違う。

694 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 16:38:59.09 ]
>>692
CSTLのsetを使う


695 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 16:52:07.30 ]
回答ありがとうございます。

数列は、int型で自由に入力したものになるので、長くなる可能性があります。
値の範囲は予測できません。
小数点は利用しません。



696 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 17:24:24.59 ]
要はエスパー待ちて事だな。

697 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 17:26:40.06 ]
>>692
「重複している値があれば取り出す」とあるが、例えば「1,1,1,1,1」という数列があったとき、
1は1回だけ取り出されるのか、それとも4回取り出されるのか。

698 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 18:08:25.02 ]
どっちでもいいじゃん

for (i=0; i<N; ++i) {
IntSet_insert(tmp, data[i], &success);
if (!success) {
IntSet_insert(s, data[i], NULL); //1回だけの場合
IntList_push_back(l, data[i]); //複数回の場合
}
}

699 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 18:21:15.51 ]
取り出すってどういうことを言ってるんだろうか

700 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 18:33:23.57 ]
>>699
日本語の問題だな。
取り出す→Action
抽出、除外→Process

701 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 18:46:10.92 ]
配列から取り出して元の配列の要素数を減らすのか、取り出したものを別の配列に入れて再利用するのか






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

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

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