検索結果 6093 件

by みけCAT
5ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 複数のテキストファイルの扱い方
返信数: 13
閲覧数: 712

Re: 複数のテキストファイルの扱い方

printfをputsに置き換えずプログラムを動かしたところ、
自分の環境ではload errorが出ずに処理を行うことができました。
全角の数字や空白文字が混ざっているなど、処理対象のファイル名が間違っている可能性が考えられます。
by みけCAT
5ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 3項演算
返信数: 5
閲覧数: 447

Re: 3項演算

コードゴルフをする場合は、三項演算子の方が1バイト短くできて良さそうです。

コード:

m=m>f[i]?f[i]:m;
if(m>f[i])m=f[i];

// おまけ
m>f[i]?m=f[i]:1;
m>f[i]&&(m=f[i]);
m+=(f[i]-m)*(m>f[i]);
by みけCAT
5ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 3項演算
返信数: 5
閲覧数: 447

Re: 3項演算

Compiler Explorerで試した ところ、 if文を用いても三項演算子を用いてもcmovg命令を用いた全く同じコードに最適化される例を確認できました。 コンパイルしたコード int smallest(int* arr, int size) { int ans = arr[0]; for (int i = 1; i < size; i++) { if (ans > arr[i]) ans = arr[i]; } return ans; } int smallest2(int* arr, int size) { int ans = arr[0]; for (int i = 1; i <...
by みけCAT
5ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 16F819とRGBセンサーを組み合わせる方法について②
返信数: 2
閲覧数: 269

Re: 16F819とRGBセンサーを組み合わせる方法について②

ひよたんさんはこのコードでRGBセンサーから読み取った値を出力できそうだと思っていますか? それとも、わからないので適当に書いただけですか? 継続して数値がでず、 数値もラキーボードを打たないと表示されません。 fgetcで入力待ちをしているので、当然ですね。 「ラキーボード」というのがよくわかりませんが、PCのキーボードのことでしょうか? また右斜めに表示され、 ターミナルソフトの設定でLFを改行とみなすようにするか、\nの代わりに\r\nを用いるようにすると改善されるでしょう。 (\r → カーソルを左端に戻す、 \n → カーソルを次の行に進める) i2c のaddress 構成に問題が...
by みけCAT
5ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 幅優先探索で発生するメモリエラー
返信数: 2
閲覧数: 286

Re: 幅優先探索で発生するメモリエラー

visitedおよびfromの初期化(リサイズ)を最初しかしていないので、 小さいマップについて探索したあとに大きいマップについて探索すると不都合を起こします。 毎回初期化するか、前回の探索とサイズが変わっていたら初期化するようにするといいでしょう。 「ここでエラー」の行において、行こうとしている座標とは関係ない座標をmap.passMapに渡しているので、 正常に行けるかどうか(ここに範囲外かどうかも含まれている)を判定できず、範囲外に行ってしまう原因になります。 行こうとしているのは(x, y) = (next_x, next_y)なので、この座標をmap.passMapに渡すべきです。
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 16F819とRGBセンサーを組み合わせる方法について
返信数: 6
閲覧数: 390

Re: 16F819とRGBセンサーを組み合わせる方法について

まずは現状のコードの問題点を修正しましょう。 まず、このセンサーのアドレスは「8bit」ではなく「7bit+R/Wビット」なので、 センサーのアドレス0x29にRead(1)/Write(0)を加えて、 Writeは0x52、Readは0x53です。 0x29と0x2Aでは2ビット異なってしまい、おかしいと考えられるでしょう。 次に、 i2c_start(); //START CONDITION i2c_write(sensor_Write_address); //SLAVE ADDRESS (0x29) i2c_write(0x00|0x80); //COMMAND BIT (0x80) i...
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 外部シンボル~~が出て何を言っているのかわかりません
返信数: 23
閲覧数: 809

Re: 外部シンボル~~が出て何を言っているのかわかりません

コードをよく読むと、そんな単純な話ではないかもしれません。 まず、関数呼び出しの構造は main→rupu→field→MazeDraw→sento となっています。 このうち、rupu関数とfield関数は引数としてchar*型のデータを受け取り、 MazeDraw関数は引数としてchar型のデータを受け取ります。 そして、main関数ではrupu関数にマルチバイト文字を含む文字列へのポインタを渡しています。 rupu関数ではこのポインタをそのままfield関数に渡し、 field関数ではこのマルチバイト文字の1バイト目をMazeDraw関数に渡しています。 表示のため、文字列全体、もしくは...
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 外部シンボル~~が出て何を言っているのかわかりません
返信数: 23
閲覧数: 809

Re: 外部シンボル~~が出て何を言っているのかわかりません

呼び出している関数は char sento(char n1,char n2,char nm1,char nm2,int ss,char n); ですが、提示されたコード中にsentoという名前の関数の定義は char sento(char *nakama1[],char *nakama2[],char *nakamaM1[],char *nakamaM2[],int ss,char n) しか無いようです。 C++は関数のオーバーロードに対応しており、同じ名前でも引数の型が違う関数は違う関数とみなされます。 呼び出している関数 char sento(char n1,char n2,char n...
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: javaでPC向けシューティングを作りたいが・・・
返信数: 7
閲覧数: 769

Re: javaでPC向けシューティングを作りたいが・・・

どのフレームワークがいいかとかはよくわかりませんが、基本的なこととして… まず、「シューティング」というだけではどんなゲームかよくわかりません。 Tonyu Systemのチュートリアル 程度の簡単なものから、 弾幕シューティングや3D空間を3Dモデルのキャラクターが飛び回るような重いものまでいろいろ考えられます。 次に、想定スペックが低すぎると思います。 想定スペック OS:windows 10, 7, CPU:PentinumII 500MHzくらい メモリ:1GB Windows 10 も Windows 7 もシステム要件は1GHz以上であり、500MHzでは足りません。 (RAMは1...
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: デジタルフォトフレーム上でのタイマーのプログラム起動は可能でしょうか?
返信数: 2
閲覧数: 229

Re: デジタルフォトフレーム上でのタイマーのプログラム起動は可能でしょうか?

デジタルフォトフレームとの連携ができるかはわかりませんが、
「SDカードに入れたプログラムを起動」する方法の一つとして、
FlashAirという製品を使うとLuaのプログラムが動かせるらしいです。

FlashAir
FlashAir Developers - FlashAirでLuaを実行する
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: ステップ数についておしえてください
返信数: 18
閲覧数: 741

Re: ステップ数についておしえてください

オフトピック
かずま さんが書きました:
6ヶ月前
[​i] をタグと解釈するのはやめて欲しい。
このせいで過去の記事を検索しても、ダメに
なっているものがたくさんあり、残念です。
記憶が正しければ以前は閉じタグの[/i]がなければタグとみなされなかった気がしますが、
閉じタグがなくてもタグとみなされるように改悪されてしまったようですね…
なんででしょう?
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 制作ゲームのロード時のエラーについて
返信数: 16
閲覧数: 618

Re: 制作ゲームのロード時のエラーについて

intへのポインタの配列を用意し、わざわざ1個ずつintのオブジェクトを確保し、
そこにオブジェクトハンドルを入れるというのは、あまり見ないパターンですね。
そして、このオブジェクトハンドルを入れたintのオブジェクトをdeleteしても、
DXライブラリで確保したオブジェクト(画像、音、モデルなど)の領域を開放することはできません。
DXライブラリで確保したオブジェクトの領域を開放するには、
それぞれに対応したDXライブラリの関数を使わないといけません。

(本当にオブジェクトがリークしているかは確認していません)
(よく見たら、オブジェクトもちゃんと開放している場所もありますね)
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 制作ゲームのロード時のエラーについて
返信数: 16
閲覧数: 618

Re: 制作ゲームのロード時のエラーについて

コードが7089行もあり、読むのが大変です。
最小限の・自己完結した・確認可能なサンプルコードの作成と提示をお願いしたいです。
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 動作確認のお願い
返信数: 5
閲覧数: 446

Re: 動作確認のお願い

環境:Windows 7 Home Premium Service Pack 1 (64ビット)
「コンピューターに MSVCP140D.dll がないため、プログラムを開始できません。」というエラーが出ました。
mixcpp-3-20539-20190131.png
エラー
mixcpp-3-20539-20190131.png (22.82 KiB) 閲覧数: 415 回
Dependency Walkerでチェックしたところ、他にも
VCRUNTIME140D.DLLおよびUCRTBASED.DLLが使用されており、自分の環境には無いようでした。
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: C言語 構造体について
返信数: 26
閲覧数: 1188

Re: C言語 構造体について

B:行で strstr 関数を使ってますが、ここは、strcmp 関数を用いて if(strcmp(seiseki[n].szName, name)==0) でないと駄目です。 これは誤りです。 なぜなら、#2で「氏名の一部を入力すると点数を表示する」という条件があるのに、 この条件式では氏名全体を入力しないと該当する点数が表示されくなってしまうからです。 同様に、 「一単位づつ strcmp で比較」を for で回す必要があります。 も誤りです。 以下のようにforを二重にし、 構造体に記録した氏名のデータからマッチする可能性がある部分をstrcmpで比較していく方法もありますが、 上司...
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: C言語 構造体について
返信数: 26
閲覧数: 1188

Re: C言語 構造体について

問題を読んでいないのでもしかしたら「for文を使う」という指定があるのかもしれないですが、
そうでなければ別にfor文を使う必要は無いですね。
なぜなら、for文

コード:

for (A; B; C) D;
は、(Dにcontinue;を含まなければ) while文

コード:

{ /* Aが宣言を含む時、その影響が漏れないようにする */
    A;
    while(B) {
        D;
        C;
    }
}
と等価なので、代わりにwhile文を使えばいいからです。
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: メニュー画面でのバグ
返信数: 15
閲覧数: 713

Re: メニュー画面でのバグ

変数の定義順の違いで動作が変わるということであれば、
配列の範囲外へのアクセスなどの未定義動作が起こっている可能性が考えられます。
Valgrindなどの自動検査ツールを使えればいいのですが、
Windowsに対応しているものはあったかなあ…?
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: メニュー画面でのバグ
返信数: 15
閲覧数: 713

Re: メニュー画面でのバグ

一応ファイルの内容が揃って実行できるのかもしれないですが(確認してません)、
ファイルが多くてコピペの手間が大きそうですね。
本文で貼るのではなく、zip形式などでまとめて添付ファイルにしていただいた方がよかったと思います。

また、イベントやマップなどのコードもあるようですが、それは本当に「メニュー画面でのバグ」に関係あるのでしょうか?
関係ない部分は削っていただき、バグが再現可能な最小限のコードにしていただけるとわかりやすそうだと思います。
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: ニュートン法について
返信数: 2
閲覧数: 255

Re: ニュートン法について

「シグモナイト関数」でググってみましたが、
AIの現状と技術の概要 - Qiita
しかヒットせず、定義は見つかりませんでした。
どのような関数なのでしょうか?

もし「シグモイド関数」のことでしたら、fxの定義がおかしいように思えますね。
提示されているコードの言語がわかりませんが、
C言語やC++では+演算子より/演算子の方が先に計算されるので、
これらの言語だと仮定すると、fxは1 / 1を先に計算して1 + exp(-x)と同じ意味になります。
return 1 / (1 + exp(-x)); のようにカッコを追加すれば、標準シグモイド関数を計算できるはずです。
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 迷路攻略プログラム
返信数: 1
閲覧数: 236

Re: 迷路攻略プログラム

まず、変な「予想」をするのは避け、「左手法」とはどのようなアルゴリズムなのかを調べましょう。 例えば 迷路 第四章 を参考にすると、以下のようなプログラムになると思います。 //壁の状況を取得する wall = getWall(); if (!(wall & D_WALL_LEFT)) { //左に壁がない (左に進める) leftTurn(); // 左に向きを変える } else if (!(wall & D_WALL_FRONT)) { //前に壁がない (前に進める) // そのまま } else if (!(wall & D_WALL_RIGHT)) { //右に壁がない (右に進め...
by みけCAT
6ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 最短経路の求め方
返信数: 8
閲覧数: 444

Re: 最短経路の求め方

まず、処理対象のグラフを図示してみました。 graph.png Wandbox で実行してみると、以下のようになりました。 0 17 1000000 1000000 1000000 1000000 1000000 17 0 21 7 1000000 1000000 1000000 1000000 21 0 13 5 1000000 1000000 1000000 7 13 0 1000000 5 1000000 1000000 1000000 5 1000000 0 16 22 1000000 1000000 1000000 5 16 0 25 1000000 1000000 1000000 ...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: bmpファイルの入出力
返信数: 12
閲覧数: 566

Re: bmpファイルの入出力

読み書き両方です。
書き込み時にパディングを入れたら(そして他のソフトウェアは入れるので)、
読み込み時もパディングが入っている前提で読み込まないと、おかしくなりますよね。
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: bmpファイルの入出力
返信数: 12
閲覧数: 566

Re: bmpファイルの入出力

これはカラーテーブルが256要素あり、画素が下のものから並んでいる無圧縮256色bmpファイル専用ですね。 解析の結果、少なくとも以下の問題があることがわかりました。 readBMP関数において、ファイルを開いた直後に必ずreturn -1;しているので、 読み込み処理が行われず、writeBMPに未初期化のデータが渡されてしまいます。 複文({}で囲まれたブロック)を用いてファイルが開けなかった場合のみreturn -1;するようにするか、 return -1;を削除するといいでしょう。 せっかくbmpInfo->imageDataに確保した領域のアドレスを入れているのに、 その後の読み込み...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 円と回転四角形(長方形)の当たり判定
返信数: 6
閲覧数: 401

Re: 円と回転四角形(長方形)の当たり判定

「回転長方形」の表現方法がわかりませんが、仮に ・辺がx軸またはy軸と平行な長方形 ・回転の中心座標と回転角度 で表現されているとします。 このときは、 1. 円の中心座標を、長方形の回転の中心座標を中心に、長方形の回転角度×(-1)回転する 2. 回転後の円と、「辺がx軸またはy軸と平行な長方形」の当たり判定を行う で当たり判定ができると思います。 円と辺がx軸またはy軸と平行な長方形の当たり判定は、 円と長方形の当たり判定 | ftvlog によると、 ・長方形を縦(上下)または横(左右)に円の半径分伸ばした領域に円の中心が入っているか ・円の中心と長方形の四隅の距離が円の半径以下か でで...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 円と回転四角形(長方形)の当たり判定
返信数: 6
閲覧数: 401

Re: 円と回転四角形(長方形)の当たり判定

回転させた後の長方形の四隅の点の座標を求めて、多角形と円の当たり判定をすることでできると思います。 ある点Aを別の点(x, y)を中心に回転させた点は 1. 点Aを(-x, -y)平行移動する。これを点A'とする。 2. 1で求めた点A'を、原点を中心に回転させる。これを点A''とする。 3. 2で求めた点A''を(x, y)平行移動する。 ことで求めることができます。 多角形と円の当たり判定は、例えばこのサイト 2D衝突編その5 円と線分から多角形と円へ に載っているように、 ・円が多角形を構成するいずれかの辺(線分)に当たっている ・多角形の辺が時計回りのベクトルで表されているとき、円の中...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: c言語で避けゲーを作ってるのですがうまくいかない
返信数: 4
閲覧数: 336

Re: c言語で避けゲーを作ってるのですがうまくいかない

せっかくbom1~bom3で爆弾を描画しても、すぐにHgClearで消してしまうため、
表示されない、もしくは表示されないように見えるのだと推測できます。
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: delay関数について
返信数: 1
閲覧数: 191

Re: delay関数について

環境がわかりませんが、 例えばクロック周波数とそれぞれの命令を実行するのにかかるクロック数が決まっているマイコンであれば、 そこから計算して20usecに該当するクロック数 - ポート操作にかかるクロック数のディレイをアセンブリ言語で入れる、 という方法があります。 (例えばクロック周波数が16MHzなら、320クロックで20usec) また、タイマー割り込みが使える環境であれば、20usec間隔で割り込みがかかるようにして、 50000回(1000ms)割り込みがあったらPORTAbits.RA0 = 0x01;を実行し、 さらに次の割り込みでPORTAbits.RA0 = 0x00;を実行...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: UTF-8 から Shift_JIS への変換
返信数: 3
閲覧数: 487

Re: UTF-8 から Shift_JIS への変換

URLエンコードをデコードしたいということであれば、添付ファイルに入っていたnkf.exeの出力 YUKI.N>.\nkf.exe --help Usage: nkf -[flags] [--] [in file] .. [out file for -O flag] j/s/e/w Specify output encoding ISO-2022-JP, Shift_JIS, EUC-JP UTF options is -w[8[0],{16,32}[{B,L}[0]]] J/S/E/W Specify input encoding ISO-2022-JP, Shift_JIS, EUC-JP...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: scanf を簡略化したい
返信数: 12
閲覧数: 721

Re: scanf を簡略化したい

「C++ テンプレート 特殊化」でググって最初に出てきた テンプレートの特殊化 | Programming Place Plus C++編【言語解説】 第23章 を参考に、こんな感じでしょうか。 #include <iostream> #include <cstdio> #include <string> using std::cin; using std::string; template <typename T> T in() { T temp; cin >> temp; return temp; } template <> int in() { int temp; scanf("%d",...
by みけCAT
7ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: コードの書き方チェックお願いできますでしょうか。
返信数: 2
閲覧数: 344

Re: コードの書き方チェックお願いできますでしょうか。

配列の0番目の要素を使っておらず、学生数STUDENT_NUM_MAX-1までしか安全に処理できないので、
STUDENT_NUM_MAXという名前が紛らわしくて良くないですね。
0番目の要素を使いたくないのであれば、要素をSTUDENT_NUM_MAX+1個確保するべきでしょう。

できれば、
・入力の読み取りに成功したか (scanfの戻り値)
・入力された値が正常か (大きすぎないか、小さすぎないか)
・計算がオーバーフローするか
のチェックもあるといいでしょう。

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