検索結果 235 件

by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

坂道に沿って動くプログラムです。
高校生レベルの数学がわかればわかるはず、、、?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

keito94 さんが書きました:
オフトピック
ええっ!?Y座標を坂道に合わせて動かせばいいんですか!?
ちょっと甘かったです…。
y座標動かさないと坂道のぼれないやないかーいw
でもこれで不具合の原因がわかりましたね^^
移動した座標が坂道だったら、坂道の傾斜に応じてy座標を変化させてやればいいわけですね。
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

マジックナンバーが定数に置き換えられてて見やすくなっていました^^ ただ(私がconst intって書いたせいかも知らないけど)定数がすべてconst intで定義されていました。 定数は別に整数である必要はなく、比較対象と同じ型にしたほうがいいと思います。 以下修正案 //collision.cpp void CCollision::GetYPosition(float* myx, float* myy, float* addx, float* addy, int* jcount, bool* gflag) { //座標を一時的に保存する。 float tempaddx = *addx; f...
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

プログラムを動かしてみたところキャラクターが坂道に差し掛かると キャラが沈んだり、なぜか左右にものすごい勢いで動いたりしました。 何が悪いのかとプログラムを読もうと思ったのですが、いわゆるマジックナンバーが多く正直私レベルだと理解できません。(っていうかしたくない^p^) 出来ればマクロ、enum、定数などに置き換えたほうがいいと思います。 void CCollision::GetYPosition(float* myx, float* myy, float* addx, float* addy, int* jcount, bool* gflag) { float tempaddx = *ad...
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

坂道に入ると
Run-Time Check Failure #3 - The variable 'SlopeCond' is being used without being initialized.
という例外が出て止まってしまいます@_@
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

坂道とプレイヤーの線分が交差していたらColSegments関数にtrueを返してほしくて、 でもColSegments関数はfalseを返すし、 これはColSegments関数の不具合ということですか? 違います違います!! ColSegment自体は正しく動作しています!! ColSegments関数の仕業じゃないとすれば妖怪の仕業、、、? 冗談はさておき、 http://dixq.net/forum/blog.php?u=900&b=6581 のISLeさんの投稿を見ると、 GetXPosition周りが怪しいとか、、、。 解決案としましては、 GetXPosition関数とかの修正...
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

purin52002 さんが書きました: 坂道とプレイヤーの線分が交差していたらColSegments関数にtrueを返してほしくて、
でもColSegments関数はfalseを返すし、
これはColSegments関数の不具合ということですか?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

線分と線分が交差していたらtrueを返すのがColSegments関数で、
坂道とプレイヤーの線分が交差していたらColSegments関数にtrueを返してほしくて、
でもColSegments関数はfalseを返すし、
そのせいでブロック判定もうまくいかない。

ということですか?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

keito94 さんが書きました:
purin52002 さんが書きました: これは、真になるであろうパラメータを与えても真にならないということですか?
そ、そういうことではなくてですね…。
坂道のブロックにいると判定されているときに何故か真にならないということです。
purin52002 さんが書きました:理解力ががが^p^

坂道ブロックにいるときは真と判定してほしいのに、真と判定されない。
という不具合だと思ったのですが違うのですか?
理解力がががががが^p^p^
ちょっと状況がわからなくなってしまったので詳しく説明してもらってもいいですか?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

理解力ががが^p^

坂道ブロックにいるときは真と判定してほしいのに、真と判定されない。
という不具合だと思ったのですが違うのですか?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

線分の判定が真にならない。
これは、真になるであろうパラメータを与えても真にならないということですか?

だとすると(私は線分判定のアルゴリズムがよくわかっていないので)お手上げです^^;
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

坂道に入った瞬間だけ正しい値が出力されるとしたら、
  • 坂道判定で座標が修正される。->修正された座標では坂道判定にならない
  • 坂道判定に座標以外のパラメータが使われている。->一定時間以上いたら正しい値を返さない、一度だけ正しい値を返す。など(んなわけないか)
  • 小人さんが意地悪している^p^
これぐらいが私の思い付く原因ですね、、、
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタ
返信数: 5
閲覧数: 3050

Re: ポインタ

ベクトルと行列の掛け算は内積を使って計算できますね。 内積は同じ次元のベクトルの各要素を掛け合わせたものの総和で、 n次元のベクトルA,Bの場合、 ΣA(i)*B(i)|i=1~n になると思います。(あってるかな?) これはfor文をn回回して、A,Bの同じindexの要素をかけたものを足し合わせればいいと思います。 次に、ベクトルと行列の掛け算です。 文字だけで説明するのが私ではちょっと難しいので、説明は省略します^^; とりあえず計算方法だけ説明します。 ベクトルA,Bの内積をdot(A,B)として、ベクトルXと行列Y(i行j列)の掛け算は [ dot( X,Y( :,1 ) ) dot...
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

i+2を出力した後に、坂道のブロックにいるときにはi+2が出力されるはずなのに、何故か0を出力してしまう不具合というのが確認されました。 これは坂道ブロックに入った瞬間に0を出力するということですか? それとも坂道ブロックに入った瞬間はi+2、そのご0が出力されるということですか? そして、return 0の部分では、indexの値が獲得されていないのがわかりました。 仮にreturn 0 ;にブレークポイントをつけてindexをウォッチしたなら、スコープを抜けているので値を見ることができません。 それとももしかしてreturn 0 ;を返す場合のindexの値が不定になるということだったり...
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: ベクトルの積
返信数: 1
閲覧数: 1511

Re: ベクトルの積

http://dixq.net/forum/viewtopic.php?f=3&t=19214

なんか似たような内容のトピックがすでにあったので、
同じこと2回書くのも面倒だし、urlのトピックのほうが返信もいっぱいついてるし
向こうで返信を待ってみてはどうですか?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

日本語力が低いのでできるだけわかりやすい文章でお願いします^p^;


「ブロックとしての当たり判定」というのがなんなのかわかりませんが、19行目の

int index = Game->MapData().GetValue(i + 2, pt[j].x / cwidth, pt[j].y / cheight);

で正しい値が取得できているでしょうか?
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

keito94 さんが書きました: GetChipLayerNumが上り坂を示す25行が実行された後に30行が実行されているのを確認しました。
return i+2 ; のあとにreturn 0 ; が呼ばれたってことですかね?
returnのあとにreturnが呼ばれたことがないのでわからないのですが、その場合どのような値が出力されるのでしょうか?(i+2?それとも0?)
purin52002 さんが書きました: 計算式が間違っているか、計算に使っているindexの値がおかしいかですね。
keito94 さんが書きました:デバッグして調べてみたところ、purinさんが指摘した部分に間違いはないどころか、
となると何が不具合の原因かちょっとわたしではわからないですね、、、^^;
by purin52002
6年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

最初のプログラムが見つけられませんでした^p^

このGetChipLayerNum関数に不具合があるということですよね?
値を返すのが25,30行目で、不具合が起きそうなところはsrc_x、src_yの部分ですね。

計算式が間違っているか、計算に使っているindexの値がおかしいかですね。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

slope.xに-2が代入されてしまうということはslopeに値を代入するCheckSlope関数がうまく動いていないんだとおもいます。 自分でデバッグして、原因を突き止めてから、自分で症状を改善させましたが、まだ完成ではありません。 なぜなら、このアルゴリズムで、else if(tempaddx != 0)のところへ来ないで、ブロックとして扱われてしまうからです。 if (Slope.s.x >= Player.v.x && Player.v.x < Slope.v.x || Slope.s.x <= Player.v.x && Player.v.x > Slope.v.x) { if (C...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

なぜなら、このアルゴリズムで、else if(tempaddx != 0)のところへ来ないで、ブロックとして扱われてしまうからです。 これは元のプログラム179行目~のことでいいんでしょうか? //-2を返したら、ブロックとして扱う。 if (slope.y == -1) { *gflag = true; } else if (slope.y == -2) { //ブロックとしての当たり判定。 } else { *addy = slope.y; } これを修正して //-2を返したら、ブロックとして扱う。 if (slope.y == -1) { *gflag = true; } else ...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 度数を計算
返信数: 2
閲覧数: 1726

Re: 度数を計算

RAcnt[j][0]が最小値で、RAcnt[j][1]が最大値を表しているなら間違っていないような気がします。
どこか別の部分で間違えていたりして、、、?
あと正しい出力だと度数Aは12個出力されていますが間違った出力では11個出力されています。
オフトピック
プログラムが見づらいです^^;
codeタグで囲むと見やすくなるので、今後プログラムを張ることがあれば囲ってください^^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

申し訳ないのですが、理解力が人一倍ないので一つ一つ確認していきます^^; if (Slope.s.x >= Player.v.x && Player.v.x < Slope.v.x || Slope.s.x <= Player.v.x && Player.v.x > Slope.v.x) { if (ColSegments(Slope,Player,&T1,&T2,&Vres)) { res.x = (int)x-Vres.x; res.y = (int)y-Vres.y; } } else { //何故かここへ来る。 res.x = -2; res.y = -2; return res; }...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: すいません 急ぎで解答をお願いします。
返信数: 5
閲覧数: 3643

Re: すいません 急ぎで解答をお願いします。

まずは自分で書けるところまで書いてみてください。
そのあとデバッグしていきましょう。

、、、というのもやっぱり冷やかしになってしまうのかしらorz
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 坂道の当たり判定を作っています。
返信数: 122
閲覧数: 93947

Re: 坂道の当たり判定を作っています。

正直ソースが多すぎて読むのが面倒です。
不具合が出ていそうな箇所をあぶりだしてほしいです。

そこでデバッグですよ!
いまこそデバッグトレーニングの成果を試すときですよ!

とりあえず坂道のアタリ判定をしているときに空中にいるとみなされる原因を探してみましょう。
  1. 判定している箇所を探す。
  2. 空中にいるとみなす計算を探す。
  3. その計算に使われている変数を探す。
  4. 変数を設定する計算を探す。
を繰り返してください。
いつか「お前、その計算結果はおかしいだろ^p^」となる処理が見つかるはずです。

原因となる処理さえ見つけられればあとは何とかなったりならなかったり、、、
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: タイピングゲームを作成しています。
返信数: 9
閲覧数: 4344

Re: タイピングゲームを作成しています。

うーん、、、わからない^^;

とりあえず気になったところだけあげて行きます。

48行目
もしもvisualstudioで書いているなら、scanfを使うとscanf_sを使えと怒られてしまうので置き換えたほうがいいかも

50行目
putsにint型のiを渡していますが、putsには文字列を渡す必要があるのでitoa関数などで文字列型にしたほうがいい気がする。

50行目
putsとuserstrを比較しているが、putsの返り値は正の値かEOFなので期待している動作にはならなさそう。

warningの原因になりそうなのはこれぐらいしか見つけられませんでした^^;
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: タイピングゲームを作成しています。
返信数: 9
閲覧数: 4344

Re: タイピングゲームを作成しています。

提示しているコードは正しいですか?

コードのコメントにはtyping.cと書いてありますが、エラーログには課題4.cと書いてあります。
あとscanf_s関数も見当たりません。

もしかして違うファイルをコンパイルしようとしてたりして、、、?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++][dlib]機械学習ライブラリ「dlib」で未解決が出ます
返信数: 1
閲覧数: 2316

Re: [c++][dlib]機械学習ライブラリ「dlib」で未解決が出ます

http://dlib.net/compile.html
このページをよく読んで下さい。

リンカエラーが出る場合は「dlib / all / source.cpp」をプロジェクトに追加しろ
と書いてあります。


というわけで自己解決してしまいました^p^;

英語でも嫌がらずにドキュメントを読めということですね^^;
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++][dlib]機械学習ライブラリ「dlib」で未解決が出ます
返信数: 1
閲覧数: 2316

[c++][dlib]機械学習ライブラリ「dlib」で未解決が出ます

こんにちは アテンションプリーズ! こちらに機械学習ライブラリ「dlib」を扱ったことがある方はいませんか!? dlibでdnnをしようと思い、dnn.hをincludeしたところ 「外部シンボル "USER_ERROR__missing_dlib_all_source_cpp_file__OR__inconsistent_use_of_DEBUG_or_ENABLE_ASSERTS_preprocessor_directives" は未解決です。」 というエラーが出ました。 どこで何を定義すればこのエラーを解決できますか?(っていうか今まで見たことのない未解決シンボルなんですが、、、orz)...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 標準出力出来ず セグメントエラー
返信数: 4
閲覧数: 3279

Re: 標準出力出来ず セグメントエラー

コード:

printf("区の名称を入力せよ: ");
scanf("%s",str1[i]);
fprintf(fp,"%s: %d\n", str1[i], population[i]);
この時点でi=Nになっているので、配列の範囲外にアクセスしているような気がします。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 関数にポインタを引数として渡すプログラムについて
返信数: 29
閲覧数: 10377

Re: C言語 関数にポインタを引数として渡すプログラムについて

引数を逆にしたのはいいのですが、読み込んだデータを不定の値で上書きしている部分が直っていないのでちゃんと動かないような気がします^^;

おそらくですが、cpにssの値をコピーしたいのはないでしょうか?
だとするとcpが左辺に来るべきだと思います。
[hr]
質問者さんに質問するのもおかしいですが、

コード:

*p+='B'-'b';
にはどんな意味があるんですか?

'A'-'a'の意味は分かったんですけど'B'-'b'の意味が分かりませんでしたorz
次の文字だから'B'-'b'っていうことですか?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: int型の最大値と最小値
返信数: 2
閲覧数: 1676

Re: int型の最大値と最小値

c言語であれば「limits.h」というヘッダをincludeすればINT_MINとINT_MAXというマクロがつかえた気がします。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: ダブル型のインクリメント
返信数: 2
閲覧数: 1594

Re: ダブル型のインクリメント

http://dixq.net/forum/viewtopic.php?f=3&t=9447
検索かけたら出てきました^p^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: #pragma unroll
返信数: 5
閲覧数: 2799

Re: #pragma unroll

必ずやってくれる!と言い切れはしませんが、最近のコンパイラは頭がいいので多分やってくれるでしょう(適当)
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: #pragma unroll
返信数: 5
閲覧数: 2799

Re: #pragma unroll

https://www.xlsoft.com/jp/products/inte ... unroll.htm
上のページを読むとオプション設定がいるようなことが書いてあります。
設定はしていますか?
オフトピック
errorじゃなくてwarningだし無視しちゃえばいいんじゃないだろうか^p^
警告レベル下げれば多分warning言われないと思うし、、、
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]コンソール入力バッファの破棄
返信数: 2
閲覧数: 2254

Re: [c++]コンソール入力バッファの破棄

調べてみたところReadConsoleのごみはFlushConsoleInputBufferで削除できないみたいですね。
低レベル版のReadConsoleInputを使ったところ(おそらく)うまく動きました。

sleepさんありがとうございました<(__)>
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 16進数(数値から10進数(数値)変換
返信数: 4
閲覧数: 4860

Re: 16進数(数値から10進数(数値)変換

質問に質問するのもおかしいですが、
変数に10進や16進の数値って格納できるんですか?
内部的には2進の数値が入っていて、表示するときに10進にしているだけだと思っていたんですが、、、
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: よくわかりません
返信数: 13
閲覧数: 6789

Re: よくわかりません

まずvoid型の関数を作ります。関数名はここではFuncとします。あとで自分の好きな名前にしてください。 void Func(void) {} つぎに引数をchar型にします。引数名をcとします。あとで自分の好きな名前にしてください。 void Func(char c) {} つぎに関数の中身を作っていきます。 ASCIIコードはご存知ですか?知ってても知らなくてもとりあえずググります。 ASCIIコードを眺めてると、なんとなく規則性が見えてくるような、、、そうでもないような、、、 多分関数の中身を考えることがキモだと思いますのでここは自分で考えてみてください^^ ヒント aのascii->9...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++言語の分数を扱うプログラム
返信数: 4
閲覧数: 3391

Re: C++言語の分数を扱うプログラム

かずまさん
まあもしかしたらstd::minを使おうと思ってなかったんじゃないですかね?
どこのソースかはわかりませんが、自作のminを使ってたのかもしれませんし。

minの定義ですがkeito94さんの言う通りクラス内でしてもいいと思います。
ただ、汎用性の高そうな関数なのであえてクラス内で定義する必要もないんじゃないかな、と思います。

まあ一番はかずまさんの言うstd::minが手っ取り早いと思いますけどね^^
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 初心者質問場
返信数: 32
閲覧数: 27942

Re: 初心者質問場

おめでとうございます^^
しかしパックマンとはなかなか懐かしいですねw

将棋も頑張ってください^^
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 初心者質問場
返信数: 32
閲覧数: 27942

Re: 初心者質問場

main文のswitch文を関数ポインタで置き換えると多少管理が楽になるかもしれません。 int title(); int play(); int over(); int clear(); enum {TITLE,PLAY,OVER,CLEAR}; int status = TITLE; typedef int (* SCENE)() ; int main() { const SCENE scene[] = {title, play, over, clear } ; while(1) { status = scene[status](); } } このように、switch文を関数ポインタの配列...
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: c言語のポインタってなんなんだ?
返信数: 4
閲覧数: 8893

Re: c言語のポインタってなんなんだ?

関数ポインタの話題が出たのでちょっとお話します。 まず、ポインタとはパソコンの中のデータが保存されている場所の住所(アドレス)を表すものです。 ところで、関数というものは処理をひとまとめにしたものです。 しかし、関数も「処理をひとまとめにしたデータ」としてパソコンに保存されるのです。 つまりポインタにぶち込めちゃうのです。ポインタしゅごい。 関数ポインタは以下のように使います。 void Func(int a, double b) ; int main() { void (*func_p)(int, double) = Func ; //func_p というポインタ変数にFuncを代入 int...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]コンソール入力バッファの破棄
返信数: 2
閲覧数: 2254

[c++]コンソール入力バッファの破棄

こんにちは 最近Win32_APIをつかってコンソールゲームを作っています。(文字のみで画面が構成される) 今回はダブルバッファを用いようと思ったため標準入出力は使わず、 代わりに コンソール出力バッファ1 コンソール出力バッファ2 コンソール入力バッファ を作ろうと思いました。 ダブルバッファを使った文字出力、入力バッファに文字入力はできたのですが、 入力バッファに残ったごみを削除することができません。 (15文字入力、ReadConsole関数で10文字読み込む、次のReadConsole関数に5文字読み込まれてしまう) 調べてみたところ、 残っているごみの数を調べるにはGetNumber...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 微分係数を求めるプログラムを作っています
返信数: 7
閲覧数: 7324

Re: 微分係数を求めるプログラムを作っています

、、、完全に勘違いしていました^^;

てっきり微分を数値計算するためにpower関数を使え、ということかと思ったのですが
xの(n-1)乗を計算するために使えってことなんですね^^;

masuterさん、余計な話をして申し訳ないです<(__)>
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 微分係数を求めるプログラムを作っています
返信数: 7
閲覧数: 7324

Re: 微分係数を求めるプログラムを作っています

数学の話に寄っていきます。
数学は苦手ですのでご了承ください^^;

今回は微分がわかっているので手打ちで計算すればいい気もしますが、
微分がわからない関数を微分する必要が出てくることがあります。

そういうときに導関数の公式を使います。

公式
(f(x+h)-f(x))/h (lim h->0)

プログラムでもこの公式を使うことで微分ができます。
(hは適当に小さい値にする)
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 初心者質問場
返信数: 32
閲覧数: 27942

Re: 初心者質問場

よかったです^^

自分のコードを不細工と思えるのは素晴らしいことです。
きれいだと思えるコードが書けるようお互い頑張りましょうw
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラー解消されません、、、
返信数: 7
閲覧数: 6876

Re: エラー解消されません、、、

原因がわからないのでご自身でデバッグしてみてください。
各関数で値を出力してみてください。

コード:

double onnsoku(double t)
{
    double c;
    c=331.5+0.6*t;
    printf("onsoku_c=%lf\n",c);//同じように各関数での変数の値を確認する。
    return c;
}
波長がinfとなるということは、hatyou関数がおかしい。
hatyou関数では割り算しかしてないから、引数がおかしい。
、、、のように悪さをしていそうな処理をさかのぼっていくと効率がいいかもしれません。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラー解消されません、、、
返信数: 7
閲覧数: 6876

Re: エラー解消されません、、、

横から失礼します。

tenngaさんはscanfで「%f」を使っていますが、boxさんは「%lf」を使っています。
変数がdouble型なら%lfにしないとちゃんと読み込んでくれないんじゃないでしょうか?
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 初心者質問場
返信数: 32
閲覧数: 27942

Re: 初心者質問場

なるほど、なんとなくわかりました^^ おそらくmapをグローバルかstaticな変数にしてるんだと思います。 int map[2][2]={1,0},{1,1}; void play() { //map[2][2]={0,0,}{0,1}に変更 } void main() { play();//この時点でmap[2][2]={1,0},{1,1}; play();//この時点でmap[2][2]={0,0},{0,1}; } おそらくこういうことですよね? 対策を2つほど思いつきました。 まず1つはmapをローカル変数(play関数の中だけの変数)にすること。 こうするとplay関数が呼び出さ...
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 初心者質問場
返信数: 32
閲覧数: 27942

Re: 初心者質問場

うーむ、、、日本語力が低いので何がしたいのかいまいちわかりません^^;
マップをリセットって何だろう、、?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [VS2017]クラスウィザードの使い方
返信数: 4
閲覧数: 3791

Re: [VS2017]クラスウィザードの使い方

しょ、しょんな、、、orz
じゃあこれからも仮想関数を手動でオーバーライドする日々がつづくのですね^p^

今回の質問はこれで解決としますが、仮想関数をオーバーライドした継承クラスを作ってくれる機能などありましたらぜひお教えください<(__)>
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 初心者質問場
返信数: 32
閲覧数: 27942

Re: 初心者質問場

よくできていると思います^^

言語はcですか?c++ですか??
cなら関数ポインタ、c++ならクラスを使うともっと汎用性が高くなるとおもいます。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: c言語プログラムについて
返信数: 3
閲覧数: 3314

Re: c言語プログラムについて

オフトピック
無駄な配列も使ってないし、変数名もわかりやすいし、コードもスッキリしたし、素晴らしい。
boxさんの言うとおり手動でやるときのことを考えてみてください。
あとはそれをプログラムに直すだけです^^

ちなみに私なら、それぞれの点数帯の人数を数えて、人数分だけ米を書きます。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: プログラム問題
返信数: 2
閲覧数: 1677

Re: プログラム問題

こんにちは ソースが非常に見づらいです^^; ソースを載せるときはcodeタグを使うと見やすくなります。(っていうか使うルールです。) bが最高点を取った人ナンバー、dが最低点を取った人のナンバーでいいですかね? とりあえずその仮定で話をすすめます。 ・最低点のナンバー minを更新するif文の中でdを更新すればいいと思います。 a というのは「i番目の点数」ということでいいでしょうか? だとしたらdは何番目に設定すればいいでしょうか? 最高点のナンバーも同じですね。 cは使わずに済みそうです。 変数をabcde、、、とするのはあまり感心しません。 わかりやすい名前をつけることをおすすめします...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++ コンストラクタ?
返信数: 12
閲覧数: 5261

Re: C++ コンストラクタ?

constを使いたくないのはよくわかりました。
constを使わずにsub関数を作りたいというのもよくわかりました。

では、constについてググってもらいたいというのはわかってもらえたでしょうか?
constが何を意味するのか分かってもらえたでしょうか?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: RPGとSTGを1つのゲームにしたい
返信数: 1
閲覧数: 1262

Re: RPGとSTGを1つのゲームにしたい

rpg作る
stg作る
rpgからstgを呼び出す

とりあえずrpgが完成してから考えるというのはどうでしょう?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++ コンストラクタ?
返信数: 12
閲覧数: 5261

Re: C++ コンストラクタ?

まずはググる。グーグル先生は偉大。 グーグル先生が偉大すぎてわからなかった場合は質問する。 「先生は~~っていってるんですけど何を言っているのかよくわかりません。」 質問内容を具体的に書くと答える側も答えやすいです。 かといって「~~するプログラムを教えてください」って言われると、 「すげー全部教えてあげたい!でも、本人のためにならないしな、、、」ってなって答えづらいです。 質問内容をなるべくコンパクトにまとめるといいと思います。 あと、今回ググってほしいのはconst修飾子についてです。 const修飾子についてググって、それでもどうしたらいいかわからなかったらもう一度ここに来てみてください...
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: c言語のポインタってなんなんだ?
返信数: 4
閲覧数: 8893

Re: c言語のポインタってなんなんだ?

とりあえずポインタ便利じゃんと思う場面 関数の出力を増やすことができる。 これじゃないですかね? void Func(int *func_a, double *func_b, char *func_c) { *func_a = 1 ; *func_b = 2.0 ; *func_c = '3' ; } int main() { int main_a ; double main_b ; char main_c ; Func(&a, &b, &c ) ; printf("a=%d b=%lf c=%c\n" ,main_a, main_b, main_c ) ; } 普通は1個しか値を返せない関数...
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: c言語のポインタってなんなんだ?
返信数: 4
閲覧数: 8893

c言語のポインタってなんなんだ?

c言語のポインタの話をしませんか?

おそらくc言語最強の敵ですよね^^;
しかもよっぽどc言語に慣れてこないと便利さも対して感じないし、、、。

ポインタをしっかり理解している人はきっと少ないはず!
トピ主の私が全然理解できていない!

ということでc言語のポインタに関する話をどんどんしていきましょー。




、、、できれば、わかりやすいようにかみ砕いてお話しましょー^^;
by purin52002
7年前
フォーラム: 1から勉強してみないか?
トピック: 自己紹介をしてみないか?
返信数: 14
閲覧数: 17635

Re: 自己紹介をしてみないか?

こんばんは、purin52002です。

c、c++と勉強してきました。
cが3年ぐらいですかね?それからはずっとc++です。(テンプレートクラススマポオーバーライド^p^)

ここに登録したのは割と最近ですが、ROMでちょくちょく見てました。
よろしくお願いします<(__)>
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++ コンストラクタ?
返信数: 12
閲覧数: 5261

Re: C++ コンストラクタ?

ちょっとでいいからググってくれ~w

そしてt[]とかstaticのことも考えてみてください。
きっと役に立ちますよ^^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++ コンストラクタ?
返信数: 12
閲覧数: 5261

Re: C++ コンストラクタ?

おそらくコンストラクタは使わないような気がします。(わたしなら使いません) 単純に日付を引けばいいんじゃないでしょうか? 返り値がint型、引数がDateクラスの関数subをDateの中に作りましょう。 あとはその関数の中で日付の差分をとればよさそうです。 アルゴリズムっていうか計算方法はめんどくさそうだから書きません^p^ 10進数じゃないだけで引き算には変わりないはずなんできっとできるはず、、、 前スレ(?)の質問が解決になっててよかったです^^ 解決した場合は具体的にどのようにして解決したかを書くといいですよ。 教えた側もどのように解決したか気になりますし、 他の人が似たような問題で困っ...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [VS2017]クラスウィザードの使い方
返信数: 4
閲覧数: 3791

[VS2017]クラスウィザードの使い方

こんにちは
今回はvs2017の機能について質問があります。

私は全然vs2017を使いこなせていないのですが、先日クラスウィザードという機能を発見しました。
メンバー変数などを表示してくれるし便利だなー、と思ったのですが、「仮想関数」タブになにも表示されません。
基底クラスの仮想関数も継承クラスのオーバーライドした関数も表示されません。

どうすれば表示されるのでしょうか?もしかしてc++だと表示されないのでしょうか?
最終的には基底クラスの仮想関数をオーバーライドした継承クラスとかをウィザードに作ってもらいたいのですが高望みしすぎでしょうか?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::make_uniqueを関数の引数に
返信数: 4
閲覧数: 3374

Re: [c++]std::make_uniqueを関数の引数に

お騒がせして申し訳ありません<(__)>

オーバーロードでおそらく解決しました^^;
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::make_uniqueを関数の引数に
返信数: 4
閲覧数: 3374

Re: [c++]std::make_uniqueを関数の引数に

すみません、提示コードが間違いです^^;

本当は右辺値ではなく左辺値を受け取る関数です。

私の理解だと、左辺値は実体が作られたもの、右辺値は関数の返り値など直前に作られたものだと思っています。

私が今作っている関数ではどちらの場合でもエラーが出ないようにしたいと思っています。


、、、ここまで書いて気づいてしまったのですが、左辺値を引数にする関数と右辺値を引数にする関数を作ってオーバーロードすれば解決ですかね?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C++のコンストラクタについて...
返信数: 5
閲覧数: 2289

Re: C++のコンストラクタについて...

こんにちは

まずクラスのpublic中にコンストラクタを作ります。
コンストラクタは返り値のない関数のようなものです。

main文を見ると引数は年月日ですかね?

コード:

class Date
{
public:
    Date(int y,int m,int d);//コンストラクタ
};
コンストラクタの中で日付を設定します。が、set関数があるのでそれを利用すれば簡単に作れそうですね^^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 全てのキーの入力状態を取得する
返信数: 2
閲覧数: 1854

Re: 全てのキーの入力状態を取得する

その解釈でいいと思います。引き続きがんばってください^^
オフトピック
正確にはループするごとにScreenFlip()、ProcessMessage()、 ClearDrawScreen()、 gpUpdateKey()の順に呼び出しています。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::make_uniqueを関数の引数に
返信数: 4
閲覧数: 3374

[c++]std::make_uniqueを関数の引数に

こんばんは 最近はue4をいじっていましたが、ようやくc++のコードを書けそうです。 今回の質問ですが、以下のコードをご覧ください。 class Super ; class Sub : public Super ; void Func(std::unique_ptr<Super>&& x) ; //Superクラスのポインタを引数にとる関数 int main() { //error //引数の型が合わないと怒られる(unique_ptr<Sub>が作られるから?) Func(std::make_unique<Sub>() ) ; } 上のコードのように、make_uniqueを関数の引数に渡し...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 継承されていないクラスのコンストラクターの呼び出し方(初学者)
返信数: 7
閲覧数: 4537

Re: 継承されていないクラスのコンストラクターの呼び出し方(初学者)

こんばんは、今日の晩御飯は焼きそばです。 今回keitoさんがやっているのは 「今日はパンがたべたいな」「じゃあ焼きそばにするね^^」 のようなことです。 ごめんなさい、焼きそばがうれしくて調子に乗りました^^; class A;//中身は省略 class B; class C : public A; class MyClass { public: A* a; A* b; A* c; }; int main() { MyClass obj; obj->a=new A();//ok obj->b=new B();//error obj->c=new C();//ok! } 簡単に説明すると、 ポ...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 早急にお願いします。
返信数: 11
閲覧数: 7060

Re: 早急にお願いします。

1、[1マイル=1.61km]から[xマイル=??]の方程式を立てます。
2、マイルを引数(double型がいいかな?)、kmを返り値(これもdouble型がいいかな?)の関数を作ります。
3、main文で関数を呼び出して、結果を出力します。

こんなかんじでどうですか?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 例外がスローされました:GameがNullPtrでした。を解消するにはどうすればいいですか?
返信数: 5
閲覧数: 9894

Re: 例外がスローされました:GameがNullPtrでした。を解消するにはどうすればいいですか?

あまりファイル間での変数のやり取りをしたことがないので頓珍漢なことを言うかもしれませんが、

Stage.cppにGameというポインタはあるのでしょうか?
もしもMain.cppのGameを使いたいのならexternとか何とかを使ったような、、、
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 関数のオーバーライドがされていない。(初学者)
返信数: 10
閲覧数: 5294

Re: 関数のオーバーライドがされていない。(初学者)

クラスはややこしいですが、使えるようになると非常に強力な武器になるはずです。
ふぁいと^p^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 関数のオーバーライドがされていない。(初学者)
返信数: 10
閲覧数: 5294

Re: 関数のオーバーライドがされていない。(初学者)

継承をちゃんと理解されてないのかもしれません。 #include<iostream> using namespace std; class Super { public: virtual void func() { cout << "super" << endl ; } }; class Sub : public Super { public: void func(){ cout << "sub" << endl ; } }; int main() { Super* super = new Super();//Superクラスを作る Super* sub = new Sub();//Subクラ...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 関数のオーバーライドがされていない。(初学者)
返信数: 10
閲覧数: 5294

Re: 関数のオーバーライドがされていない。(初学者)

管理人さんの言う通りvirtualのつけ方を間違ていると思います。

コード:


class Super
{
public:
    virtual void func();//ベースクラスでvirtual
};

class Sub : public Super
{
public:
    void func() override;//派生クラスでoverrideと書いておくと仮想関数がなかった場合にエラーを出してくれる
};

派生クラスのCPlayerにvirtualがついているので、CMoverにつけてあげてください。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C言語についての質問です。
返信数: 3
閲覧数: 2732

Re: C言語についての質問です。

フォーラムルールを読むと、

「同じ質問をほかの掲示板でしてはいけない」

らしいですよ^^;(相互リンクを張ればセーフ)


okwaveのほうで回答はもらえたようですし、解説はいらないですか?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラーの原因
返信数: 31
閲覧数: 17335

Re: エラーの原因

使えないなら使えるようになりましょう^^ きっと今後役に立ちます。 「this」というのはクラスのポインタを示します。(自分自身のポインタみたいな感じ?) 構造体のメンバ(構造体の中の変数)にアクセスするときは「hoge.x」のようになります。 構造体のポインタがメンバにアクセスするときはアロー演算子というものを使います。hoge->x thisもポインタなので、this->xのように書くとxにアクセスすることができます。 わかりやすく説明するのが難しいので、「c++ this」で検索して自分でも調べてみてください。 また、c++の勉強をするなら「ロベールのc++教室」や「猫でもわかるプログラ...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラーの原因
返信数: 31
閲覧数: 17335

Re: エラーの原因

横から失礼します。 コードはかずまさんのヒントをもとにすれば完成すると思います。 質問です。 ヒントのプログラムをコンパイルして実行してみましたか? ヒントのプログラムを理解しましたか? ヒントのプログラムは、メンバ変数や引数の個数が Dateクラスとは異なるので無視したんですか? 「set は、引数の値をメンバ変数に設定する。get は、メンバ変数の値を引数にコピーする」ということを今は理解しましたか? 質問はすべてはいです。 ヒントのプログラムは理解できているということなので、 あとはメンバ変数を変えたりなんだりで済むと思います。 もしもヒントのプログラムでわからない部分があるとしたら 箇...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: lcc 32 windows program " vocabulary memory"
返信数: 1
閲覧数: 1437

Re: lcc 32 windows program " vocabulary memory"

こんにちは
動画見ました。

上から
神経衰弱
よくわからない
同じ単語を打てば正解?

という認識で、mohamb02さんのやりたいことがよくわかりませんでした。

もしも、英語を和訳するゲームを作りたいなら、
英語とその日本語をペアにして保持しておき、入力された文字と日本語を比較すればいいのではないかなと思います。
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラーの原因
返信数: 31
閲覧数: 17335

Re: エラーの原因

>実行しても、存在しない日付でもそのまま設定され、 ということはif文の判定式がおかしいはずです。 論理演算が苦手なら数直線なんかを書いて図にしてみるとわかりやすいかもしれません。 >どんな日付でも翌日にならず、そのまま出力されてしまうのですが.... get関数でDateクラスが保持している年月日を取得すると思われます。 get関数が実装されていないから正しい値が出ません。 google先生を頼りにget関数を実装してみましょう。 >set関数にセットする機能が無い。 Dateクラスのメンバ変数はわかりますか? set関数では正しい年月日が入力された際にメンバ変数に年月日を代入すればいいと思...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラーの原因
返信数: 31
閲覧数: 17335

Re: エラーの原因

お疲れ様です。 エラーらしいエラーはなくなったと思われます^^ 細かいところをいくつか、、、 //後半の式も()でくくったほうがいい //else if文だとくくっているのでくくり忘れ? if ((mm == 1 || mm == 3 || mm == 5 || mm == 7 || mm == 8 || mm == 10 || mm == 12 )&& 1 <= dd || dd<= 31) //たぶん式が適切ではない //mm=2の場合必ずif文の中に入る else if (mm == 2 || 1 <= dd ||dd <= 28) あとこれは個人的な意見なのですが、set関数の返り値が...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: エラーの原因
返信数: 31
閲覧数: 17335

Re: エラーの原因

修正するとコードが完成に近づきます。
修正してみるといいですよ。
れっつとらい!
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 日付を表すクラス(C++)
返信数: 3
閲覧数: 2534

Re: 日付を表すクラス(C++)

こんばんは set,get,nextの中身ですが ご自身で説明された通りのプログラムを書けばいいのではないでしょうか、、、? int set(int year,int month,int day); 年月日を設定する関数 不正な日時の場合は設定せず、1を返す 正しく設定された場合は、0を返す 私ならif文を使うかな?(if文を使わないスマートな方法もあります) void get( ) 設定されている年月日を取得する関数 引数はmain関数から察する 察せませんでした、、、 参照型の引数ですかね? とりあえず年月日を代入する、、、? void next() 日付を次の日にする 次の日にしましょう...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: C言語の電卓プログラムについて
返信数: 2
閲覧数: 3346

Re: C言語の電卓プログラムについて

main文の返り値がない気がします。
int main(){...}じゃないでしょうか?
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [再]文字を逆に
返信数: 6
閲覧数: 3207

Re: [再]文字を逆に

stack使えばあまり形が崩れないかも、、、? #include<stack> using namespace std; int main() { int a,b; stack<int> st;//new! cout << "10進数\n"; cin >> a; while (a >= 1) { b = a % 2; a = a - b; a = a / 2; //cout << b; st.push(b);//new! } //new! while(!st.empty()) { cout<<st.top(); st.pop(); } }
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 当たりゲーム 改良
返信数: 1
閲覧数: 1513

Re: 当たりゲーム 改良

こんにちは

cx,cy,ex,ey,point,iがhit内で定義されていないからじゃないでしょうか?
hit関数に引数として渡すか、グローバル変数にするかで解決できると思います。
(グローバル変数は個人的に好きじゃないので、引数で渡すことをお勧めしますw)
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::unique_ptrをコピーしたい
返信数: 9
閲覧数: 7852

Re: [c++]std::unique_ptrをコピーしたい

sleepさん 日本語が下手で申し訳ないです^p^ 年々コミュ障レベルが上がるのか会話が下手に、、、 それは置いといて、 テンプレートが出てくるとは思いませんでした。 私が未熟故、正直なんでこれで動くのかがわからないのですが(コンストラクタの中身をおいきれない、、、) ちゃんと動くらしいし、実行結果まで表示していただいて感謝感謝です。 コードの内容は理解できていませんが、私の求めていた解決策っぽいですし、あとは私がこのレベルまで上り詰めればいいわけですね^p^ 、、、どれだけかかるかはわかりませんが^^; というわけで解決にしたいと思います。 皆さんありがとうございました<(_ _)> saf...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::unique_ptrをコピーしたい
返信数: 9
閲覧数: 7852

Re: [c++]std::unique_ptrをコピーしたい

zeekさん その発想はありませんでした。 decltypeを使って何とかできないかな、と試行錯誤したことはあったんですが(結果失敗^^;) 全派生クラスを直書きするという発想はありませんでした。 ただ、やはり汎用性というか、後から派生クラスを追加することも考えて出来れば直書きしない方法があればなー、と高望みしたりしなかったり、、、^^; YuOさん swapの特殊化とは、、、俺に考え付かないことを平然と思いつくッ! しかし、そうですか、、、swapを使わないこともあるのですか、んー、、、 shared_ptrを使うことも検討したのですが、 コピー(swapの副産物として)がしたい でも、複数...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::unique_ptrをコピーしたい
返信数: 9
閲覧数: 7852

Re: [c++]std::unique_ptrをコピーしたい

zeekさん 最終的にはコンテナにクラスを格納して、stlの関数を使いたいと思っています。 その際にコピーコンストラクタやoperator=が呼ばれるようです。(だからpublicで定義したい 実は躓いていたところは自己解決できてしまったのですが、引き続き回答をお待ちしております。 躓いていたこと:Pimplイディオムを持つクラスのstd::reverse struct MyClass { struct Impl; std::unique_ptr<Impl> pimpl; MyClass(); }; struct Super; struct SubA : public Super; struc...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 入れ子になったvectorのファイル出力について
返信数: 4
閲覧数: 2919

Re: 入れ子になったvectorのファイル出力について

#include<vector> #include<string> #include<algorithm> #include<fstream> #include<iterator> #include<string> using namespace std; int main() { string vector<vector<string>> data_list; string file_name; string delim{","}; ofstream ofs(file_name); if (!ofs) { return -1; } auto func = [&](const vector<...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: たまに曜日が表示されないときがあります。
返信数: 8
閲覧数: 4536

Re: たまに曜日が表示されないときがあります。

こんばんは コード拝見しました。 まず曜日が表示されない不具合についてですが、131~137行目の前日の曜日を表示するところに問題があると思います。 if(d>0){ i=i-2; printf("前の日は西暦%d年%d月%d日%sです。\n",d,e,f,h[i]); }else{ i=i-2; printf("前の日は紀元前%d年%d月%d日%sです。\n",-d,e,f,h[i]); } i=i-2とするとiが0未満になる恐れがあります。 するとh が変なところを見てしまうので表示がされないのかな、と思います。 次にコードに関してですが、 まず変数名をabcdefghiから変えたほうがい...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]std::unique_ptrをコピーしたい
返信数: 9
閲覧数: 7852

[c++]std::unique_ptrをコピーしたい

こんにちは、今回はunique_ptrについて質問があります。 struct Base;//純粋仮想クラス struct A : public Base; struct B : public Base; struct MyClass { std::unique_ptr<Base> p; MyClass(const MyClass &obj)//?? { this->p = std::move(obj.p);//constついてるから無理 this->p=make_unique//objのpがAかBかわからない *this->p=*obj.p;//new してないから値が入らない? } } 上の...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]ライブラリファイル内の未解決外部シンボルについて
返信数: 2
閲覧数: 1826

Re: [c++]ライブラリファイル内の未解決外部シンボルについて

かずまさん 返信ありがとうございます。 未解決はやっぱり未定義なんですね^^; 自分でいろいろ検証したところ、自己解決してしまいました。(申し訳ないです。 問題はコードではなくリンカのほうにあったようです。 私はvisualstudio2015で開発をしています。 ライブラリファイルを2つ(A,Bとします)利用するためにライブラリがあるディレクトリのパスをプロパティで設定しました。 どうやらこのディレクトリの中にゴミが混ざっていたようで、 Adir->A Bdir->B,A(!?) のようにBのディレクトリにAのライブラリが混ざっていたのです。 で、Bディレクトリの中にあるAが読み込まれて変な...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]ライブラリファイル内の未解決外部シンボルについて
返信数: 2
閲覧数: 1826

[c++]ライブラリファイル内の未解決外部シンボルについて

こんばんは、今回は大嫌いな未解決外部シンボルについて質問があります。 staticなメンバ変数を持つクラス 1を継承したクラス 上の二つのようなクラスをライブラリ化しました。 これらは二つともビルドできたのですが、 これら二つを利用してプログラムを書くと"メンバ変数は未解決です"というエラーが出ます。 片方だけを利用するとビルドできるので、おそらくstaticメンバ変数が二重定義されている(同じソースファイルが二度読まれている)んじゃないかなとアタリをつけています。 、、、つけてるだけで確信はないのですが^^; というわけで、今回の質問です。 ソースファイル(というよりオブジェクトファイル?)...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]vector<unique_ptr<T>>の初期化
返信数: 5
閲覧数: 5181

Re: [C++]vector<unique_ptr<T>>の初期化

zeekさん ありがとうございます。おかげでうまくいきました。 生の配列なんて久しく使っていなかったのですが、配列のことちょっとなめてましたね、、、 inemaruさん 初期化リストを使えと聞いて真っ先に思い浮かんだのがinitializer_listでした。 それからinitializer_listで実装してみたところ「A型とB型の初期化子ってなんやねん」と怒られ、「Base型のリストだよ」と明示していました。 とても醜かったのでまたこちらで質問するかどうかで悩んでいたところにinemaruさんの追記でした^^ 可変引数に右辺値参照にforwardに、、、 実際に使うのはどれも初めてでした^...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]vector<unique_ptr<T>>の初期化
返信数: 5
閲覧数: 5181

Re: [C++]vector<unique_ptr<T>>の初期化

inemaruさん
素晴らしいアイデアをありがとうございます。
目から鱗でした。
早速使わせていただきたいと思います。

emplace_backについてなのですが、
私の認識ではコピーしないpush_backのイメージでした。
unique_ptrはコピーができない(moveされる)のでpush_backでもいいのかな、と思っていたのですが
やはりemplace_backのほうが効率がいいのでしょうか?
(名前が複雑という理由だけで使わず嫌いを起こしています^^;)
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]vector<unique_ptr<T>>の初期化
返信数: 5
閲覧数: 5181

[C++]vector<unique_ptr<T>>の初期化

こんにちは スマポを知ってから生ポwwwぬるぽwwwな者です。 今回はboostではなくc++標準のunique_ptrについて質問があります。 class Base;//定義は省略 class A : public Base;//同上 class B : public Base; //同上 int main() { vector<unique_ptr<Base> > p_vec { make_unique<A>(), make_unique<B>() } ;//error p_vec.push_back(make_unique<A>() );//こっちはセーフ } 上のようなコードで、vec...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: ネット接続
返信数: 3
閲覧数: 2284

Re: ネット接続

「visual c++ でネットに接続」でぐぐったら参考になりそうなサイトが何件か出てきました。
まずはそちらのサイトで勉強してみた方が多分いいですよ^^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: ファイルが作れない
返信数: 8
閲覧数: 4998

Re: ファイルが作れない

コンソール<->windowsアプリは

プロジェクト->プロパティ

左上の構成をすべての構成にして

リンカー->システム->サブシステムをいじれば変えられた、、、はずです(たしか

サブシステムがwindowsになっていたらコンソールにしてみてください
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: 基底クラスの必要性について
返信数: 6
閲覧数: 4029

Re: 基底クラスの必要性について

基底クラスってなんやねん。 そう思っていた時期が僕にもありました。 基底クラスってとても便利なんです。 inemaruさんもおっしゃる通り配列にまとめることができるんです。 このようなクラスがあったときに class Base { public: virtual void func(){ cout << "base" << endl; } }; class A:public Base { public: void func(){ cout << "A" << endl; } }; class B:public Base { public: void func(){ cout << "B" <<...
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [VS2015]vectorのウォッチ
返信数: 21
閲覧数: 10683

Re: [VS2015]vectorのウォッチ

返信が遅れてしまい申し訳ありません。

たくさんの回答ありがとうございました。
せっかくたくさんの意見を出してもらっておいて申し訳ないのですが、修復をかけたら直りました-_-;
もし今度また同じような現象が起こったら、今回出た回答を参考にしたいと思います^^
by purin52002
7年前
フォーラム: C言語何でも質問掲示板
トピック: [VS2015]vectorのウォッチ
返信数: 21
閲覧数: 10683

Re: [VS2015]vectorのウォッチ

沖さん
レジストリをいじるのはちょっと怖いですね、、、

みえさん
3番目以外の方法を試してみたのですがだめでした。

今日の夕方ごろに修復、再インストールをしてみようと思います。
夕方までに回答、もしくは修復後もウォッチできないかもしれないのでもう少し未解決のままにしておこうと思います<(_ _)>

詳細検索ページへ移動する