検索結果 49 件

by pocket
1年前
フォーラム: C言語何でも質問掲示板
トピック: CPUとメモリの理解に関して
返信数: 6
閲覧数: 2169

Re: CPUとメモリの理解に関して

よもやまさん

参考リンクを記載頂きありがとうございます。
昔のメモリは、容量が少なく比較的理解しやすいですね。

メモリとCPUの関係について自分でも調べていまして、
雰囲気は理解することが出来ましたので、
ひとまず解決とさせて頂きます。

私の疑問について考えて下さった方に、感謝いたします。
ありがとうございました。
by pocket
1年前
フォーラム: C言語何でも質問掲示板
トピック: CPUとメモリの理解に関して
返信数: 6
閲覧数: 2169

Re: CPUとメモリの理解に関して

返信が遅くなってしまい申し訳ありません。 >よもやまさん 回答頂きありがとうございます。 CPUの算術演算以外の機能を教えて頂きありがとうございます。 CANも名前だけは知っていたのですが、あまり詳しくないので、少し調べてみようと思います。 >かずまさん 丁寧に回答頂きありがとうございます。 ある程度イメージすることが出来ました。 ちなみに、かずまさんがおっしゃっている 「メモリのある部分は外部の装置にも接続されていたりします」 に関してですが、Windowsの場合は、「システム情報>ハードウェアリソース>メモリ」にて 参照できる情報の事でしょうか? もし可能でしたら、返信頂ければ幸いです。 ...
by pocket
1年前
フォーラム: C言語何でも質問掲示板
トピック: CPUとメモリの理解に関して
返信数: 6
閲覧数: 2169

CPUとメモリの理解に関して

お世話になっております。 あまりC言語とは関係ない質問で申し訳ありません。 ですが、C言語ではメモリに関して意識すべきだと思いましたので、こちらで質問させて頂きました。 現在メモリやCPUについて調べているのですが、少し疑問に思った点について質問させて頂きます。 よくCPUは算術演算の機能しか無いという説明を見かけます。 メモリに格納された数値同士を計算することしか出来ないという説明です。 ですが、PCはブラウジングも出来ますし、Wordで文書の作成も出来ます。 CPUは算術演算しか出来ないという説明と、PCは様々な処理が出来るという現状に非常にギャップがあるように感じます。 私自身、あまりハ...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: 配列とポインタの違いに関して
返信数: 4
閲覧数: 931

Re: 配列とポインタの違いに関して

maruさん 非常に丁寧に回答いただきまして、本当にありがとうございます。 なお、int型のポインタは sizeof(int) バイトの領域のブロックで32バイトではありません。32ビットの間違いかもしれませんが... intのサイズは32ビットですね。 間違えておりました。 要素という用語が変数の値であるとすると、ポインタの要素はポインタが指す変数のアドレスであり、変数の要素ではありません。 ptr_a, *ptr_a, a をそれぞれ出力してみれば一目瞭然でしょう。 やっとポインタというものが理解できた気がします。 ポインタとはメモリ番地とデータがセットになったものだと勘違いしておりました...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: 配列とポインタの違いに関して
返信数: 4
閲覧数: 931

Re: 配列とポインタの違いに関して

かずまさん 詳細に解説頂きありがとうございます. 配列とポインタは同じものではなかったのですね. ロベール本では同じものであるように解説されていましたので, 勘違いしていました. かずまさんの回答に関して何点かお伺いしたいことがございます. 【疑問点1】 &buff1 は、配列全体(10バイトの領域)へのポインタ &buff2 は、ポインタ buff2 へのポインタ(10バイトの領域へのポインタではない) 上記に関して,配列全体へのポインタとはint型のポインタのような感じでしょうか? int型のポインタとは以下のようなものをイメージしています. int a=10; int * ptr_a=&...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: 配列とポインタの違いに関して
返信数: 4
閲覧数: 931

配列とポインタの違いに関して

お世話になっております。 今回は配列とポインタの違いに関して疑問点があり、 質問させて頂きました。 私は配列とポインタは同じようなものだと認識していました。 例えば、以下のようなコードを考えます。 char buff1[10]; char * buff2 = malloc(sizeof(char)*10); buff1とbuff2は要素の参照の仕方に違いはあれど、 基本的には同じものだと思っています。 例えば、char型のポインタを引数にとるfgets関数などにchar型の配列を指定しても動きます。 buff1は配列の先頭の要素の番地が、buff2はchar型の要素の最初の番地が格納されている...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: memcpyのエラーについて
返信数: 5
閲覧数: 1479

Re: memcpyのエラーについて

みけCATさん 回答頂きがりがとうございます。 ご指摘の部分を修正したところ、動作しました。 適切な動作とは、srcの内容を正確にdstにコピーするというものです。 説明が不足しており、ご迷惑をおかけしました。 最終的なソースコードは以下になりました。 私の質問に対して考えていただいた皆様に感謝いたします。 ありがとうございました。 #include <stdio.h> #include <string.h> #include <stdlib.h> int main(){ int * src,*tmp; int * dst; int i1; src=malloc(sizeof(int)*10)...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: memcpyのエラーについて
返信数: 5
閲覧数: 1479

Re: memcpyのエラーについて

みけCATさん 返信いただきありがとうございます。 また、私の返信が遅くなってしまい申し訳ございません。 ご指摘いただきました通り、以下のように修正しましたが、 適切に動作しませんでした。 実行結果も合わせて記載いたします。 どの部分に不備があるのかをご指摘いただければ幸いです。 よろしくお願いいたします。 #include <stdio.h> #include <string.h> #include <stdlib.h> int main(){ int * src,*tmp; int * dst; int i1; src=malloc(sizeof(int)*10); tmp=malloc(...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: memcpyのエラーについて
返信数: 5
閲覧数: 1479

memcpyのエラーについて

お世話になっております。 今回簡単なmemcpyのプログラムを作成した結果、 エラーが出まして、そのエラーの原因がわからずに困っています。 ソースコードを以下に掲載します。 内容はsrcの内容をdstにコピーするというもので、中でmemcpyを使用しています。 sample.c #include <stdio.h> #include <string.h> int main(){ int * src,*tmp; int * dst; int i1; tmp=src; for (i1 = 0; i1 < 10; i1++){ *src = i1; src++; } printf("1."); sr...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: mallocによる動的メモリ確保
返信数: 5
閲覧数: 1226

Re: mallocによる動的メモリ確保

かずまさん

回答いただきありがとうございます。
ソースコードの詳細をしっかりと把握できていなかったようです。
具体的な例で考えるべきところを考えずに、質問してしまいました。
お手数をおかけして大変申し訳ありません。

strcpyの部分で、前の'\0'に対して上書きしているため、適切に動作しているのですね。
ポインタを使う場合は、今回のようにバッファサイズにかなりシビアになる必要があるということを学びました。

私の質問に対して、考えてくださいましたすべての皆様に感謝いたします。
本当にありがとうございました。
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: mallocによる動的メモリ確保
返信数: 5
閲覧数: 1226

Re: mallocによる動的メモリ確保

お忙しいところをアドバイス頂き本当に有難うございます。 【***みけCATさん***】 丁寧にご指摘いただきありがとうございます。 あまり、メモリを意識したプログラミングをしたことがなかったため、 私の理解に大きな間違いがあることがわかりました。 特に、fgets関数の挙動に関しては正確に理解できていませんでした。 第二引数は「最大文字数-1」だったのですね。勉強になりました。 また、realloc関数は第二引数で指定したバッファ分を増やすものだと勘違いしておりました。 第二引数ではバッファサイズ全体を指定しないといけないのですね。 また、10ずつ固定で増やすという方法は私も良くないなとは思っ...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: mallocによる動的メモリ確保
返信数: 5
閲覧数: 1226

mallocによる動的メモリ確保

お世話になっております。 普段はC++を使用しているのですが、今回はC言語限定ということで、 C言語でプログラムを作成しています。 プログラムの概要を記載いたします。 ファイルを読み込んでその内容をバッファに格納したいです。 C++であればstringで処理をするのですが、今回はmallocを使って動的にメモリ確保を行いたいです。 ただし、メモリサイズを事前に決めるのではなく、reallocを使用して処理を行いたいです。 以下にソースコードを記載いたします。 #include <stdio.h> #include <stdlib.h> #include <err.h> int main(voi...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: クラスの宣言の仕方について
返信数: 5
閲覧数: 617

Re: クラスの宣言の仕方について

みなさん 複数の返答ありがとうございます. 疑問点とは,usaoさんがおっしゃっていることについてです. 私が見たプログラムで,以下のように,定義した変数(sampleA)自身の関数(getRand)を自分の引数(コンストラクタ)に使っていたので,実際に動作するかの検証をしたかったです. Sample sampleA = Sample(sampleA.getRand()); あんどーなつさんのおっしゃることを参考に,今回の問題と原因をまとめたいと思います. まず,自身でint引数をとるコンストラクタを新しく作成した場合は,デフォルトコンストラクタが作成されないため, Sample sample...
by pocket
2年前
フォーラム: C言語何でも質問掲示板
トピック: クラスの宣言の仕方について
返信数: 5
閲覧数: 617

クラスの宣言の仕方について

お世話になっております. C++暦は約2年になります. ふと疑問に思ってソースコードを書いたところ,エラーが出ました. その原因についてお教えいただければ幸いです. #include <random> #include <iostream> using namespace std; class Sample{ public: Sample(int rand):menber(rand){}; int getRand(); int menber; }; int Sample::getRand(){ std::random_device rand; return(rand()%100); } int...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: コンパイル時の挙動の違いについて
返信数: 6
閲覧数: 948

Re: コンパイル時の挙動の違いについて

あんどーなつさん コメントいただきありがとうございます. 今回の環境では最低限のライブラリしかありませんので,リンクエラーは気にしないことにします. 本スレッドの目的はmainではエラーが出ないのに,testではエラーが出る原因の追究です. あんどーなつさんのアドバイスを参考に再考しましたところ,一応結論が出ました. sample.cとsample.sの対応を記載します. ※アセンブリの方は読む必要ないです.スキップして下のコメントに飛んでください. sample1.c int main(){ int i; int three = 3; for(i=0; i<10; i++){ int j=i...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 中点の描画を用いた線分描画
返信数: 6
閲覧数: 1120

Re: 中点の描画を用いた線分描画

hideさん

非常にわかりやすい解説をありがとうございます.
確かに,and演算子では水平に線を引く場合,途中で再帰が終了しますね.
or演算子の場合は,x,yともに距離が1になるまで再帰が回るということだと思います.
x,yともに1以上という条件からand演算子を使ってしまいました.
内容をもう少し考えて演算子を選択すべきでした.


あんどーなつさん

お忙しいところをコメントいただき本当にありがとうございます.


お忙しいところを私の疑問に対してお時間を割いていただきました皆様に感謝いたします.
本当にありがとうございました.
これにて,解決とさせていただきます.
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: コンパイル時の挙動の違いについて
返信数: 6
閲覧数: 948

Re: コンパイル時の挙動の違いについて

あんどーなつさん こちらのスレッドにも返信いただきありがとうございます. ご指摘いただきました,ソースコードを実行した結果が以下になります. arm-none-eabi-gcc -S sample.c arm-none-eabi-as -o sample.o sample.s arm-none-eabi-ld -Ttext 0x02000000 -o sample.out sample.o sample.o: In function `main': sample.c:(.text+0x2c): undefined reference to `__aeabi_idiv' sample.o: In...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 中点の描画を用いた線分描画
返信数: 6
閲覧数: 1120

Re: 中点の描画を用いた線分描画

あんどーなつさん

返信いただきありがとうございます.
ご指摘いただきましたとおり修正したところ,正常に描画できました.

ちなみに,なぜor演算子ではうまくいくのでしょうか?
また,and演算子を用いた場合でも,底辺以外が正常に描画されていたのはなぜなのでしょうか?

もう少し詳しく解説していただければ幸いです.
お時間があれば,ぜひお願いします.
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: コンパイル時の挙動の違いについて
返信数: 6
閲覧数: 948

コンパイル時の挙動の違いについて

お世話になっております. 現在ライブラリ等が一切ない環境でコンパイルをしています. 使用言語はC言語です. 以下のコードをコンパイルして,実行ファイルを作成しようとしたところ,以下のエラーが出ました. sample.c int main(){ int i; for(i=0; i<10; i++){ int j=i/3; } } int test(int n, int m){ return (n/m); } arm-none-eabi-gcc -S sample.c arm-none-eabi-as -o sample.o sample.s arm-none-eabi-ld -Ttext 0x0...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 中点の描画を用いた線分描画
返信数: 6
閲覧数: 1120

中点の描画を用いた線分描画

お世話になっております. 今回は中点の描画を再帰的に行って線分を描画するプログラムを作成しています. 使用言語はC言語です. たとえば,(5,10)の点から(20,55)の点までの線分の描画を行うプログラムを考えます. まず二点間の中点を求めて,その中点に色をつけます.(以降は(5,10)→(20,55)と表記します) 今回の場合,中点は(12,32)になりますので,この位置を赤色で塗ります. そして,(5,10)→(12,32),(12,32)→(20,55)に対して中点描画を行います. この流れで,再帰的に中点を描画することで線分の描画を実現しようと考えています. 以下に作成したコードの一...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 異なるプログラミング言語間の受け渡しについて
返信数: 3
閲覧数: 2454

Re: 異なるプログラミング言語間の受け渡しについて

返信が少し遅くなってしまい申し訳ありません。

みけCATさん、かずまさん回答いただきありがとうございます。

パイプとソケットについて調べてみました。

かずまさんに回答いただいたプログラムはパイプを使用されたものだと思います。
このようなことが出来たのですね。
はじめて知りました。

今後はソケットを用いて多言語間でのやり取りが出来るプログラムを作成したいと思います。

みなさんありがとうございました。
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 異なるプログラミング言語間の受け渡しについて
返信数: 3
閲覧数: 2454

異なるプログラミング言語間の受け渡しについて

お世話になっております. 今回は異なるプログラミング言語間のやり取りについて質問させていただければと思います. C++歴は1年と半分ほどです. では具体的な説明をさせていただきます. まず,Python,Java,C++のそれぞれで作成したプログラムがあるとします. 3個の独立したプログラムがあると言うことです. 3個のプログラムはそれぞれ独立して動いています. まず,C++のプログラムに対して"Hello"を入力します. C++のプログラムはPythonの動いているプログラムに対して,”Hello”を渡します. Pythonのプログラムは”Hello”+"world"として,javaのプログ...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: ソースコードの理解ができません
返信数: 2
閲覧数: 491

Re: ソースコードの理解ができません

can110さん

回答いただきありがとうございます。
foreach文はじめて知りました。

非常に便利な機能ですね。
参考にしつつ、今後の自分のソースコートに含めていきたいと思います。

この問題に対して考えて下さった方々に感謝いたします。
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: ソースコードの理解ができません
返信数: 2
閲覧数: 491

ソースコードの理解ができません

お世話になっております. 今回は,とあるソースコードを読んでいて,自分が理解できない部分が出てきたので質問させていただきます. C++歴は1年と少しです. よろしくお願いします. for(shared_ptr<DeviceObject> d : dos) { cout << " class:" << hex << d.get()->getEchoClassCode() << ",instanceCode:" << hex << (int)d.get()->getInstanceCode() << endl; } 分からない部分を抜粋したソースコードが上記になります. for文の引数の部分が理解...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: QTを使用して,リアルタイムに数字を表示したい
返信数: 3
閲覧数: 2698

Re: QTを使用して,リアルタイムに数字を表示したい

ISLeさん 回答ありがとうございます. また,返信が送れて申し訳ありません. アドバイスを参考にサイトや書籍で勉強しましたところ解決しました. 以下にソースコードを載せます. MyClass.h #ifndef MYLABEL_H #define MYLABEL_H #include<QLabel> #include <QString> #include <QPainter> #include <QPaintEvent> class MyClass : public QLabel { Q_OBJECT public: explicit MyClass(){} ~MyClass(){} int...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: QTを使用して,リアルタイムに数字を表示したい
返信数: 3
閲覧数: 2698

QTを使用して,リアルタイムに数字を表示したい

お世話になっております. 今回もQtについて質問させていただきます. Qt歴は半年ほどです. Qtを使用してダイアログボックスを作成し,数字をリアルタイムに変更して表示したいです. http://dixq.net/forum/gallery/image.php?album_id=146&image_id=978 上記の図において,数字が0からリアルタイムに大きくなるようにしたいです. #include "mainwindow.h" #include <QApplication> #include<iostream> #include <QThread> #include <QString> i...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: makefileを作るときに動的にできるファイルを依存ファイルに含めるにはどうしたらいいでしょうか?
返信数: 1
閲覧数: 456

Re: makefileを作るときに動的にできるファイルを依存ファイルに含めるにはどうしたらいいでしょうか?

こんにちは。 私の知識不足で内容のほとんどが理解できていないので、 見当違いなコメントになるかもしれません。 なので、参考程度に見て頂ければと思います。 特定の変数(今回はCPPS)にソースコードの名前をすべて代入して、使えばいいのではないでしょうか。 makefileの正確な書式を忘れましたので、雰囲気で書きます。 CPPS := $(shell find . -name '*.cpp') TARGET:$(CPPS) g++ $(CPPS) -Wall このような感じに書けば、特定のディレクトリ内のすべてのソースコードを含めたコンパイルができたはずです。 問題解決の一助になれば幸いです。
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 写真付きで入力形式のクイズを作りたいです。
返信数: 2
閲覧数: 514

Re: 写真付きで入力形式のクイズを作りたいです。

こんにちは。 openCVとQtを使えば実現可能かと思います。 下記のURLを参考にqtとopencvを使うかを検討して頂ければと思います。 参考 URL: http://wildpie.hatenablog.com/entry/20110220/1298186668 http://www47.atpages.jp/sensq/blog/2014/05/30/760/ なお、私の経験上Qtとopencvは導入に苦労するかと思います。 どのような環境で作成するのかによって苦労の大きさが全然違いますので、参考までに書きます。 [windows] ・opencv インストーラーがあるのでインストール...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: qtにおけるXMLの解析について
返信数: 2
閲覧数: 451

Re: qtにおけるXMLの解析について

みけCATさん

回答ありがとうございます。

掲載したXMLですが、ご指摘いただきました部分以外にも複数の間違いがありました。

すべて修正したところ適切に動作しました。

また、私が検証したところfirefoxでxmlを検証するのが一番いいということが分かりました。

この問題に対して考えて下さった皆様に感謝いたします。
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 学校で・・
返信数: 5
閲覧数: 1064

Re: 学校で・・

こんにちは.

86行目の引数の定義が,hwndとwが小文字になっているように思います.
なので,定義されていないというエラーが出るのではないでしょうか?

コード:

LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp)
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: qtにおけるXMLの解析について
返信数: 2
閲覧数: 451

qtにおけるXMLの解析について

お世話になっております. 今回はqtにおけるxml解析について質問させていただきます. qt歴は半年ほどです. 現在qtのSAXを用いたxml解析をしています. ですが,下記のエラーが出ます. Parse error at line 13, column 7: tag mismatch. 使用したxmlを載せます. <?xml version='1.0' encoding='UTF-8'?> <doc> <name>panasonic aircontroler</name> <type>aircontroler</type> <func> <func_name>TVon</func_name>...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: string.end()を数字に変換したい
返信数: 3
閲覧数: 752

Re: string.end()を数字に変換したい

usaoさん。
回答ありがとうございます。
usao さんが書きました:substrの第二引数って切出す文字列の長さを指定するのではないでしょうか.
findの結果と,元々の文字列の長さから計算できると思います.
ご指摘の通り、切り出す文字列の長さでした。
第2引数が切り出したい文字のインデックスだと勘違いしていました。

みけCATさん。
回答ありがとうございます。
リファレンスを確認せずに、サンプルプログラムだけ見て使い方を勘違いしていたようです。

皆さんありがとうございました。
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: string.end()を数字に変換したい
返信数: 3
閲覧数: 752

string.end()を数字に変換したい

お世話になっております. 今回はstringについて質問させていだきます. c++歴は1年ほどの若輩です. 以下のようなプログラムを作成しました. 特定の文字列から,255.255.255.255を切り出して別の変数に格納したいです. std::string str="AAA IP:255.255.255.255" std::string temp=str.substr(str.find("IP:")+3,str.end()) しかし,下記のようなエラーが出ます. エラー: no matching function for call to 'std::basic_string<char>::s...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: boostを使った多倍長整数からintへの変換
返信数: 6
閲覧数: 1092

Re: boostを使った多倍長整数からintへの変換

こんばんは。

>>C言語にもともとあるintには変えられないようで

私の知識不足で、よく分りませんでした。

以下のコードでは、上手くいかなかったということでしょうか?

http://melpon.org/wandbox/permlink/v6y0pmSvUspJw3wD
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: [c++]クラスのオブジェクトの使用について
返信数: 4
閲覧数: 777

Re: [c++]クラスのオブジェクトの使用について

こんばんは。 参考までにクラスについて書きます。 的外れな回答かもしれませんが、御容赦ください。 #include <iostream> #include <string> class hito //クラス宣言 { private: std::string name; int age; public: void setname(std::string name); //名前を設定するメンバ関数の宣言 void setage(int age); //年齢を設定するメンバ関数の宣言 void disp(); //内容を出力するメンバ関数の宣言 }; void hito::setname(std::...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: boostを使った多倍長整数からintへの変換
返信数: 6
閲覧数: 1092

Re: boostを使った多倍長整数からintへの変換

こんばんは。

私も初学者なので参考程度に見て頂ければと思います。

タイトルについてですが、
明示的キャストであれば変換できるようです。

ソースコード:
http://melpon.org/wandbox/permlink/dVc70xKPuQwEPlB1

参考URL:
http://boostjp.github.io/tips/multiprec-int.html
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: boostを使ったxmlファイルの値の取得ができません.
返信数: 3
閲覧数: 696

Re: boostを使ったxmlファイルの値の取得ができません.

こんばんは。

私も初学者なのでアドバイスが適当か分かりませんが、参考程度に書きます。

コード:

BOOST_FOREACH (const auto &child, pt.get_child("ATExport.Photo.Rotation")){
            ph->sensor_mat(0,0) = child.second.get<float>("M_00");
}
上記のコードですが、M_00についてしか値を取得していないような気がします。
XMLには、M_00,M_02,M_10とあるので、それぞれについてsecond.get関数を呼ぶ必要があるのではないでしょうか?
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: qt creator における構造体のコピーについて
返信数: 2
閲覧数: 826

Re: qt creator における構造体のコピーについて

ISLE さん

返信ありがとうございます.

今確認しましたところ,原因はご指摘にとおり,
以下の部分でした.

コード:

device1.device_name=="ant";
単純に文字が代入できていませんでした.
コピーされているのかの確認をdevice_nameのみで行っていたために,
関数に渡したときもコピーされていないと勘違いしました.

まとめますと,qtcreatorで構造体のコピーは=(イコール)でできました.
また,関数に構造体を渡すことも正常にできました.

単純なミスでお手数をおかけしました.
また,この問題に対して考えてくださった皆様に感謝いたします.
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: qt creator における構造体のコピーについて
返信数: 2
閲覧数: 826

qt creator における構造体のコピーについて

お世話になっております. 今回はQT creatorにおける構造体のコピーについて質問させていただきます. c++歴は1年と少し,qt歴は半年ほどです. 以下に今回作成したプロジェクトの作成方法を記載します. なお,qtのバージョンは5です. 環境はVMWare Lubuntuで,qtcreatorはapt-getから入れました. 導入のコマンドは以下です. sudo apt-get install build-essential sudo apt-get install qtcreator sudo apt-get install qt5-doc qtbase5-examples qtbas...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 共有ライブラリについて質問
返信数: 4
閲覧数: 605

Re: 共有ライブラリについて質問

sleep さん

回答ありがとうございます.

Linuxに関して知識が不足しているということを感じました.

今後も勉強していきたいと思います.
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 共有ライブラリについて質問
返信数: 4
閲覧数: 605

Re: 共有ライブラリについて質問

sleep さん 返信ありがとうございます. ご指摘いただきました項目について, 回答させて頂きます. 1.ldd.soが存在するのか % ls /home/myname/Desktop/c++_sample | grep libldd libldd.so 存在しました. 2.同じディレクトリにおいて実行できるのか % LD_LIBRARY_PATH=. ./a.out hello 無事実行できました. 3.提示していただきました方法で実行できました. 今回の問題の原因は,シェルの変数の設定を LD_LIBRARY_PATH=/home/myname/Desktop/c++_sample とし...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 共有ライブラリについて質問
返信数: 4
閲覧数: 605

共有ライブラリについて質問

お世話になっております. 今回共有ライブラリを使ったプログラムを作成したいと思い, サンプルを作りましたがうまくいきませんでした. 以下に詳細を記載します. ldd.h #ifndef H_LDD_H #define H_LDD_H void say(); #endif ldd.hpp #include "ldd.h" #include <iostream> void say(){ std::cout<<"hello"<<std::endl; } ldd_sample.cpp #include"ldd.h" #include <iostream> int main(){ say(); } 実装...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 動的な関数の追加
返信数: 14
閲覧数: 1768

Re: 動的な関数の追加

みけCATさん これは未初期化で不定の値を計算に使用している、危険なコードです。 こんなものを実行するべきではありません。 アドバイスありがとうございます。 適切に初期化していないことが原因だったのですね。 勉強になりました。 ソースコードは以下のように修正しました。 temp.cpp //g++ temp.cpp -std=c++11 #include <iostream> #include <string> using namespace std; int main(){ const char *d =nullptr; string str= d ? d : "sorry"; cout<<...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 動的な関数の追加
返信数: 14
閲覧数: 1768

Re: 動的な関数の追加

YuOさん 回答ありがとうございます。 >>追加する機能が可能な事項は,どの程度の範囲なのですか。 現在は、とりあえず機能の追加が出来るプログラムを作成しています。 今後、大規模に拡張していく場合、 YuOさんのおっしゃるとおり、機能を絞っていくこと、または明確に定義する必要があると思います。 また、多くの方が返信してくださったソースコードを精読して、関数シグネチャを固定しなければいけないという意味がようやく理解できました。 ホスト側で実行する場合、受け皿となる関数ポインタを用意しないといけないのですね。 その関数ポインタのシグネチャとdLL側の関数シグネチャが一致している必要がある、と理解し...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 動的な関数の追加
返信数: 14
閲覧数: 1768

Re: 動的な関数の追加

>>ソフト屋さん 返信ありがとうございます。 関数のソースコード自体はすでに用意されている(.soファイルなどで)事を前提としています。 また、何のために必要なのかということですが、現在動的に関数が追加できるような仕組みを実装しています。 例えば、あるシステムは足し算しか出来ないとします。 そこで、掛け算をしたいとなった場合、ソースコートを書き換えて、コンパイルすれば掛け算が出来るようになります。 しかし、ソースコートを書き換えずに、ある特定のフォルダに掛け算用の.soファイルを入れるだけで、 掛け算が出来るようになるプログラムを作りたいと思っています。 具体的には、system関数とlsを用...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 動的な関数の追加
返信数: 14
閲覧数: 1768

Re: 動的な関数の追加

>>Yuoさん 返信ありがとうございます。 動的リンクと実行時コンパイル、プラグインについて調べてみました。 私の認識では、関数の中身を外部に置くことは出来るように思いました。 つまり、実行時に.soファイル内の関数を利用する感じです。 ですが、その場合、事前に関数名を知っておく必要があると思います。 私が調べたところ、継承を利用して関数名を事前に知っているというものがありました。 私の理想では、文字列から実行コードを生成したいです。 例えば、以下のようになります。 int main(){    std::string str;    std::cin>>str;//入力にhello    /...
by pocket
3年前
フォーラム: C言語何でも質問掲示板
トピック: 動的な関数の追加
返信数: 14
閲覧数: 1768

動的な関数の追加

お世話になっております。 プログラムを作成していて思ったのですが、c++で動的に関数の追加をする方法はありませんか? c++がコンパイル言語ということは承知しています。 ですが、コンパイル後に関数の追加をしたいです。 たとえば、hello,good bye という単語を表示する関数が定義されているとします。 hello.cpp hello()({    std::cout<<"hello"<<std::endl; } good_bye.cpp good_bye(){   std::cout<<"good bye"<<std::endl; } main.cpp int main(){    in...
by pocket
4年前
フォーラム: C言語何でも質問掲示板
トピック: boostのshared_ptrについて質問
返信数: 2
閲覧数: 898

Re: boostのshared_ptrについて質問

Rittai_3Dさん

返信ありがとうございます。
また、非常に分かりやすいソースコードも添付して頂き、どの部分が問題なのかが理解できました。

スマートポインタについての知識不足、また基本的な文法の知識が不足しているということが分かりました。

今後も精進していきたいと思います。

ありがとうございました。
by pocket
4年前
フォーラム: C言語何でも質問掲示板
トピック: boostのshared_ptrについて質問
返信数: 2
閲覧数: 898

boostのshared_ptrについて質問

現在boostについて勉強しています。 boost歴は半年ほどです。 クラスのメンバ関数をスレッドでまわそうと考えています。 また、boostでよく用いられるスマートポイントも併用して使用したいです。 ということで、今回単純なクラスの実装を行ったのですが、エラーが出てコンパイルが通りません。 以下、コードになります。 sample.cpp #include <boost/bind.hpp> #include <boost/shared_ptr.hpp> #include <boost/thread.hpp> using namespace std; class Sample{ public: ...

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