C/C++
C言語入門書やウェブサイトを用いて学習を始める者にとってもQt Creatorは機能する.プレーンなCプロジェクトあるいはプレーンなC++プロジェクトを選ぶ.「Hello World!」を表示するコードが生成される.これを各自が書き換えると良い.
BUF が小さいのは,先頭の6文字目あたりに目的の文字列があるから.その行自体も文字数が少ないから,20くらいでいいな. #include <stdio.h> #include <stdlib.h> #include <string.h> #define BUF 128 int main ( int argc, char **argv ) { if ( argc < 4 ) return 0; char *inFilename</string.h></stdlib.h></stdio.h>…
データ代入のタイミングはコンストラクタのみ. main.cpp #include "bitStreamPointer.h" #include <iostream> using std::cout; using std::endl; int main ( void ) { std::vector<unsigned char> data; for ( unsigned char i = 0; i < 10; i++) { data.push_back( i ); } bitStrea</unsigned></iostream>…
NIST Special Publication 800-38A の付録 F に記載されているテストベクトルを入力した.testNISTAESCBC256() に記述している. 実行結果 main.cpp // AES-CBC テストベクトル確認 // http://www.ipa.go.jp/security/rfc/RFC3602JA.html#4 #include <iostream> #inclu</iostream>…
bytePrinter::print() は unsigned char * 配列か std::vector を入力して,16進数文字列を出力する.hexstring2bin::convert() は 16進数文字列(std::string)を入力して,std::vecotr を出力する.暗号化後のデータも,復号化後のデータも文書 The AES-CB…
VC++ 2010 プロジェクトに与える プロパティシートファイル aesBrianvs2010-11-01-11.props を作った. インクルードディレクトリ追加 ライブラリディレクトリ追加 共通必須ライブラリ aes.lib と 選択的必須ライブラリ lib_asm_x86_v2c.lib をリンク マクロ…
共通鍵暗号に AES という手法がある.プログラミングにおいて,AES を扱うのには,誰かが既に作っているコードを利用するのが楽だ.楽なはずだ.きっと.実のところ OpenSSL というライブラリ群にも AES が実装されている.しかし,使用法がよく飲み込めなく…
xorshift のコードはコピペした.以前のエントリにも同内容があるはず.主題は main.cpp の getArray 関数.dst をアドレス受け取りにする事で,やっと完成した.sizeof(unsigned int) がマシンによって異なるところを,気にせず使用できるようにしたかった…
手順 OpenCV-2.2.0-win.zip をダウンロードする C:\Software\Develop\src に展開する CMake を使う Source: C:/Software/Develop/src/OpenCV-2.2.0 Output: C:/Software/Develop/opencvlibrary/OpenCV-2.2.0 TBB は既に C:\Software\Develop\src\tbb30_20100…
デバッグ付き実行をすると,次のメッセージを表示するダイアログボックスが出現し,コマンドプロンプトのウインドウが残る. プロシージャ エントリ ポイント ?deallocate@Mat@cv@@QAEXXZ がダイナミック リンク ライブラリ opencv_core211d.dll から見つか…
読み込めないわけ さて,映像ファイルを読み込めない - BiBoLoG で映像を読み込めないことを挙げた.VC++ 2010 のメジャーバージョン番号は10であるにも関わらす,9のライブラリを読み込もうとするコードが問題だった.ソースを msvcr90 で検索すれば ffopen…
VC2010に合わせてCMAKEでのビルドは完了できたが、AVI動画読み込みをやってみたところ「MSVCR90D.dllがねぇーよ」というありがたいメッセージが。この手のエラーはよくあるみたいで、対処法を試してみたがダメ。結局VC2008にして何かと成功。 このフナムシ野…
Visual Studio 2010 に適応した作業をということで,プロパティシートを作り,これを利用する方法を試した.ここに手順を示す.http://d.hatena.ne.jp/Guernsey/20101130/1291121529 から ifdef の部分を抜いたコードでテストした. メニューバー「ツール>…
Windows XP でなんとかできた. 参考資料 OpenCV2.1のインストール:Windows(windows:32bit, 64bit, VIsual Studio) | OpenCV.jp OpenCV 2.1 をセットアップする 準備物 Visual C++ 2010 Express OpenCV-2.1.0-win.zip TBB CMake ひょっとしたら Windows SDK…
私密鍵(private key)で何らかのデータを署名する.この署名を証明書(certification)に含まれている公開鍵(public key)で検証する. 準備するもの Shining Light版 OpenSSL 1.0.0a Visual Studio 2008 Express Edition Windows XP openssl.exe で鍵を作…
コメントを書き込まなきゃな.javadoc 形式なりなんなり. main.cpp #include "sha256c.h" int main ( int argc, char *argv[] ) { sha256c s; s.classtest(); return 0; } sha256.h #pragma once #ifdef _DEBUG #pragma comment(lib, "libeay32MDd.lib") #p…
RAND_bytes() で作ったデータを入力しても,コードの正確性は測れない.次の情報を入手したから,これに沿う結果が得られるかを確認する.RFC を参照するべきだろうが,test vector を記載した文書を見つけることができなかった. SHA-256 Test Vector The W…
VC++ で空のプロジェクトを作成する.試みに使用するだけで,簡単なのがいいなと考え,RAND_write_file() を選んだ.return 0; の行にブレークポイントを設定して様子を見る.ret には 1024 が入った.ランダムなデータがきっかり 1024 バイトある a.txt が…
産業 perl Configure VC-WIN32 --prefix=C:\Software\Develop\OpenSSL\1.0.0a ms\do_nasm nmake -f ms\ntdll.mak nmake -f ms\ntdll.mak test nmake -f ms\ntdll.mak install VC++ に include と lib へのパスを通す #pragma comment(lib, "libeay32.lib") #…
heifner: std::min and std::max の情報により解決できた.私はこれを選んだ. int a = 0; int b = 1; int x; x = std::min<int>( a, b );</int>
clone() していないでやっていて,詰まった. #include <vector> #include <opencv/cv.h> #include <opencv/highgui.h> #ifdef _DEBUG #pragma comment( lib, "cv200d.lib" ) #pragma comment( lib, "cxcore200d.lib" ) #pragma comment( lib, "highgui200d.lib" ) #else #pragma comment( lib, "cv2</opencv/highgui.h></opencv/cv.h></vector>…
std::string で連番保存ファイル名を作ろうと思ったら失敗した. int i = 0; std::string fn = i + ".png"; i は利用できず,fn は".png" になる.sstream と include して, std::stringstream ss; ss << i << ".png"; std::string は ss.str() で得る.連…
OpenCV 2.0 で作った.マウスカーソルを合わせた位置の座標と画素値を画面表示する.テスト画像は カラー画像の画素にアクセス - BiBoLoG で使った画像を拡大した. bgrview.cpp マウスは cvSetMouseCallback() で観測する.opencv.pdf や opencv.jp - OpenC…
avisplit.exe C:\data\Video\b9e3c8b14423.avi C:\data\Video\test 90と実行すると,0-90.avi,90-180.avi なんていう,90 フレームの映像ファイルが c:\data\video\test に出力される.10000 フレームのとある映像について 90 区切りを試したら,うまくいっ…
GetPot GetPot Command Line Parser / Configuration Parser - Library GetPot Version 1.0 Powerful Input File and Command Line Parser http://www.eml.ele.cst.nihon-u.ac.jp/~momma/wiki/wiki.cgi/Windows/VisualC/%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%8…
yaSSL が更新され,4番と5番の手順が不要になった.yaSSL って日本語情報少ないなあ - BiBoLoG でビルドできないなあとぼやいたが,出来るようになった. 環境 Windows XP Pro Visual C++ 2008 Express Edition yaSSL Cyassl and yaSSL are embedded SSL Lib…
Visual C++ 2008 Express Edition で確認した.main() の data に CSV ファイルの内容が入る.後に示すコードでは,各列の平均値を画面表示している.行列数はそれぞれ決め打ち.コマンドライン引数で指定できるように拡張したらいいんじゃないの. 変数説明…
Python をよく知らない僕は導入を取りやめます,と追記.一旦入れてはみたが,よく分からないからアンインストールしておいた.「導入手順」を加筆した.費用をかけない一例.OpenMP と Python を抜く.無保証.リンク集もどき. 用意するもの C コンパイラ …
イメージがつかめた.後の例は次元ごとに new/delete している. Re: newでの二次元配列 by Gimite 2005年8月24日 21:28 2つ方法があります。 int (*a)[3]= new int[2][3]; //ここで配列を使う delete[] a; または int** a= new int*[2]; for (int i= 0; i<2…
opencv.jp での cvSplit Split マルチチャンネルの配列を,複数のシングルチャンネルの配列に分割する.または,配列から一つのチャンネルを取り出す. void cvSplit( const CvArr* src, CvArr* dst0, CvArr* dst1, CvArr* dst2, CvArr* dst3 ); #define cvC…