C/C++

C言語で関数の引数に配列を値渡ししたい

zenn.dev

VC++で「fatal error LNK1104: cannot open file 'kernel32.lib'」となった時の解決方法

VC++2010でコンパイルするとfatal error LNK1104: cannot open file 'kernel32.lib'となってしまうことがありました.ググってみると,どうやらWindowsSDKの中にkernel32.libがあるので,そこのパスを通してあげればいいようです,しかし,VC++のライブラリ…

「エラー: プロジェクトに "ConfigurationGeneral" 規則がありません。」とエラーになった時の解決方法

Visual Studio C++ 2010 でx64用にビルドをすると次のようなエラーになってしまい,ビルドすることができませんでした. エラー: プロジェクトに "ConfigurationGeneral" 規則がありません。 ググると,次のようなサイトが出てきました.VisualStudioビルド…

WinodwsでBoostをソースからインストール

これまでWindowsにboostをインストールする際には"BoostPro"を利用していました。BoostPro Computing - Advanced C++ Support, Training, and Development - BoostProhttp://www.boostpro.com/しかし、今回このページに行くと「開発終了」であるというアナウ…

std::accumulateでvectorの合計や平均値を出す(std::accumulateの第3引数について考察もあり)

配列やVectorなどの合計や平均値を求めたい場合に"std::accumulate"という関数を使うと比較的簡単に求められます.これから,基本的な使い方と,自分がはまったところを説明します.まず,簡単な使い方は下のコードを見てください.#include #include #inclu…

g++を実行するときファイル名とライブラリ指定などのオプションには書く順番がある?

タイトルをなんて書けばいいのかわからなかったので,わかりにくいタイトルになってしまっています.とりあえず,g++やgccには"-l"でライブラリの指定をすることができます.例えば,下のソースをコンパイルするときは #include #include int main(void){ st…

C++で"count"という変数が使えない!?

C++でプログラミングしていたときになんかにか"count"という変数を定義して,使っているとundeclared (first use this function) やerror: reference to ‘count’ is ambiguousとエラーになってしまうことがあった.訳すと「曖昧だ」や「多義だ」というように…

g++のインクルードパスやライブラリのパスを見る

g++の現在のインクルードパスやライブラリパスを調べたいということがあるのですが、そのような時はこちらのサイトを参考にするといいとおもいます。http://takuya-1st.hatenablog.jp/entry/20120920/1348511712とてもわかりやすいですが、ライブラリパスを…

Linux複数のデュアルブート環境構築

題名の通り「Linux複数のデュアルブート環境構築」をします.したいことは次の通りです.1. 1つのHDDに「Ubuntu10.04」と「Ubuntu12.04」のデュアルブート環境を作りたい.2. 後でOSを再インストールするかもしれないということを考えて,Grubの上書きをせず…

VC++2010でGLUTのインストール

今回はVC++2010でGLUTを使えるようにします.OSはWindows7 64bit です.まず,下のサイトからWindows用としてコンパイルされてあるGLUTをダウンロードします.ダウンロードするのは現段階では「 glut-3.7.6-bin.zip 」です.Nate Robins - OpenGL - GLUT for…

C++の「auto型」について

C++に「auto型」というのがあるらしいです.調べてみると結構面白そうなもので,コンパイル時に自動で型を推測して適切な型に変換してくれるというものです.まあ,言葉だけだとあれなので #include #include using namespace std;int main (){ auto num1 = …

C++のコンストラクタにある「:(コロン)」について

C++のコンストラクタを書くところに「:」がついているものがある.たとえばこれclass testclass{private: int num_int; double num_dou; public: testclass() :num_int( 0 ) ,num_dou( 1.2 ) { }}これはコンストラクタが呼ばれたときにメンバ変数を「( )」…

OutputDebugStringが曖昧な件

あまり使わないが、「OutputDebugString」という関数がある。 「std::cout」のように文字を出すものだが、標準出力ではなく、デバッガに出力している。 普通は次のように使う。 OutputDebugString( "abc" ); そして、別にこれと似たものが2つある。 OutputDe…

C++の"const"について

C++でよくみる"const"ですが,これは普通の変数につけるとその変数が定数になって値を変更できなくなったり,関数の引数につけるとその関数内でその引数の値を変更しないと示すことができたりといろいろな使い方がありますが,大規模なプログラムなどを作る…

GitHubからダウンロードしたプログラムをVC++2010でコンパイル

誰かが作ったプログラムをGitHubからダウンロードしてくることがありますが、それをVC++のプロジェクトに直接追加してコンパイルするとエラーが大量に出てきました。しかも、エラーの箇所を探してみるとエラー行とエラーがあっていないような箇所が多くあり…

C#からC++の関数にDLLを用いてアクセス

C++にはC++のいいところが、C#にはC#のいいところがありますが、C++とC#を相互に行ったり来たりできたないかなと思って調べてみるといろいろできるようです。今回はC#を用いてC++の関数にアクセスすることに注目しました。(暇なときに逆パターンもやってみる…

vectorについて

ちょっとOpenCVでvectorを扱う機会があり、いままでも避けて通っていたvectorの全体像だけでもつかもうと、少し調べました。OpenCVでvectorを使うプログラムをググるとvectorでも"cv::vector"を使っているものと、"std::vector"を使っているものを見かけます…

C言語でのファイルの読み書き

よく使うのに忘れてしまうのでテンプレートをここにメモここを参考にhttp://www9.plala.or.jp/sgwr-t/c/sec17.html #include FILE *fp; //ファイルポインタif ((fp = fopen("test.txt", "r")) == NULL) { //ファイルオープン printf("file open error!!\n");…

cのprintf関数

javaのprintfを見つけて書式も同じで「これいいな」と思ったんですが,c++でもcoutではなくprintfを使っているのに書式はそんなに覚えていない.良い感じにまとめられているところがあったのでメモっておこうhttp://www9.plala.or.jp/sgwr-t/c/sec05.htmlhtt…

時間の計測 (c/c++)

プログラムの特定箇所のかかる時間を調べるには#include clock_t start,end;start = clock();//時間計測したい処理end = clock();printf("%.2f秒かかりました\n",(double)(end-start)/CLOCKS_PER_SEC);ここの丸々コピーですいません。http://www.mm2d.net/c/…

またsleep関数でちょっと待つ

今度はpythonでsleep関数を使う。import time time.sleep(t[s]) pythonでまでsleep関数を使いたくないが、まあ一時的にということでここを参考にhttp://d.hatena.ne.jp/Michael_e29/20110127/1296090610ここまでしたらもうjavaでもsleep関数の使い方を調べよ…

待ち時間を作るsleep関数(windows,linux)

プログラミングでよく「待ち」を簡単に導入したい時が良くある。windowsとlinuxではほんのちょっとだけ違う。●linux sleep(t[s]);●windows#include Sleep(t[ms]);windowsがSleepで大文字から始まるのが忘れてしまいそうだ。

アドレス、ポインタ、参照 まとめ

やっぱりわかりにくいアドレス、ポインタ、参照。ちょっとまとめておこう。●アドレスint a;とした時、&a がアドレス。 メモリの位置を表す(住所のようなもの)ことは定番。●ポインタint* pA = &a;としたとき、pA はポインタ。アドレスをいれておく用の箱。…

デフォルト引数とオーバーロード

ふと,デフォルト引数をつかってオーバーロードを使ったらかなりめんどくさくなんないか?と思った.ではここで各言語のデフォルト引数とオーバーロードについてのまとめ●c++デフォルト引数,オーバーロード両方ありよって,このような問題が起こる(関数の…