読者です 読者をやめる 読者になる 読者になる

vectorとsetとmapと

vector,set,mapをよく間違えるのでメモ. vector 配列 追加:vector,push_back(src); 構造体型でソートするには演算子のオーバーロードが必要 //sort用に演算子をオーバーロード bool operator<(const struct& right) const { return count == right.count…

C++のいろいろなstring::find()

C++のstring::find()の多重定義されているアレコレ. 説明 stringとcharで別に定義されているけれど,今回はstringだけで,charは使用しなかったのでスルーします. また使うときに調べるんじゃないかな(適当). find()の返却値は0オリジンです.見つから…

Visual C++ の #pragma

#pragma comment (lib, "libname.lib") と書いておくと, デバッグ>プロパティ>リンカー>入力>追加の依存ファイル を編集せずにリンカできる 参考: Windows プログラミング #3 コメント (C/C++)

0埋めの連番が振ってあるファイル名を得たい

C++で,0埋めの連番が振ってあるファイル名を,stringに収めるには,iomanipを使い,stringstreamを通す. ループしなくてもいい方法があればご教授ください. 目的 連番が振ってあるファイル名をstringに収めたい(そしてifstreamで開いて処理したい). 問…

Microsoft Visual Studio 2015 で GitHub

GitHubのSign Inは指示の通りに.迷うことはないはず. リポジトリの作り方 準備:必要なリポジトリをCloneしておく 「接続」>「GitHub」>「Clone」 リポジトリ作成 「ローカルGitリポジトリ」にあるブランチ(?)をダブルクリック 「ソリューション」の…

ProcessingというかJavaの>>(右ビットシフト)の仕様

Javaで>>をすると最上位ビットの値で埋めます. Processingでしているので,Java環境の方は適宜書き換えて試してください. テストコード boolean flag = true; void setup(){ } void draw(){ if( flag ){ println("0xFFFFFF << 4: " + hex( 0xFFFFFF << 4 )…

ProcessingのloadPixels()

ProcessingのloadPixels()は呼び出した時点のウィンドウのpixelsを保持します. 2015-12-11 23:25 追記しました 目的 loadPixels()を呼び出した後にしか扱えないpixelsは何の画素情報なのかを知りたい. 環境 Windows 8.1 Processing 3.0.1 テストコード boo…

C言語で整数値を小数点でキャスト

C言語で,整数値に小数点を付けると,double型になる. 動機 1 / 3 は int / int ,int型で演算されて 0 になるけれど, 1.0 / 3.0 は浮動小数点型の内,float型とdouble型のどちらになるのでしょうか? ソースコード #include <stdio.h> #include <math.h> int main() { prin</math.h></stdio.h>…

makefileとMakefile

(GNU Make 3.81で)makeをする場合に,makefileとMakefileが同時に存在しているとmakefileが実行されます. makeの失敗 「分離記号を欠いています」と言われて失敗.コマンド行がタブで始まっていないことは察する. 試行錯誤 普通にコマンド行を愚直に書き…

TeXで行番号付きソースコードを書く

listingsとjlistingsをusepackageして,行番号を付けたソースコードをTeXで書きます.使い方ではなくて,導入方法です. 環境 Ubuntu 14.04 TeXLive 2013 TeXがどのように成り立っているのか詳しくないので,TeXLiveにしか適用できないのかとかplatexやdvipd…

iTunesからの異常ダウンロードの対処

iPhone5S(iOS8.4)のiTunes Store Appから楽曲を購入したら, アーティスト名が不明 アルバムが不明 楽曲名がnull マイミュージックやライブラリで検索してもヒットしない その他,楽曲プロパティが抜けているような,楽曲がダウンロードされていないような …

XBeeで通信する際の値の安定とポート

XBeeで通信する際に値を安定させるには十分なdelay()を挟むこと. (Windowsだけかも.環境については下記に)XBeeのポート(not XBee SHIELD)はCOM5. デバイスマネージャーを開くと分かりやすい. 問題 XBeeのポートがどれか分からない XBee SHIELDを載せ…

Processingのtext(str, x, y)のy座標

Processingのtext(str, x, y)のy座標は文字の下揃え座標. SDLでは文字描画開始の左上の(x, y)だったから,意外な感じがした. スケッチ例 void setup(){ size(200, 200); //ウィンドウ生成 } void draw(){ //背景色: 白 background(255); //格子を描く: 黒 …

Javaの+演算子

Javaというか,Processingで書いているので,本来ならSystem.out.print()/System.out.println()であるところをprint()/println()としていますが,変わらないと思います. 2015/06/14 追記: print()/println()内の型順序を変えたものを追加.全項目に追記. p…

タイマー2で呼び出す関数中でSerial.print(),Serial.println()が不安定になるというよりプログラムが止まる

Arduino IDE ver.1.0.5では動かない(途中で止まる)のにver.1.6.4では動くスケッチ. loop()でコメントアウトされている1文を戻して,シリアルモニタを見ると良いです. 温度センサーと照度センサーを使用しているが,そのあたりは適宜いい感じにしてくださ…

アナログピンをpinModeしない

アナログピンはsetupでpinModeしないこと. pinModeするとデジタルピン扱いになり,不都合が発生しやすい. 2015/06/06 追記: スケッチを公開. 目的 analogRead値(今回は半固定抵抗)を変換してLEDの明るさを調節したい. 環境 Windows 8.1 Arduino UNO Ar…

Serial.println(); が見えない

Arduinoで Serial.println(nyan); するには Serial.begin(bps); をしておく必要がある. 2015/05/04 最下部に追記. シリアルモニタとシリアルポートとシリアル通信について. 目的 シリアルモニタに何らかの出力をしたい.(主にテストやデバッグのため) …

scanfでEOF

scanfはEOFを返却値で扱う. 引数にした変数には格納されない. 目的 2桁以上の数値を文字列として扱ってから整数に直したい. getchar()でのEOFは分かるので,無理矢理以下のようにできる. ソースコード #include <stdio.h> int main() { int ch, val = 0; while( (</stdio.h>…

isalpha() が言うところの数字

目的 <ctype.h> の関数 isalpha() が判定するアルファベットに演算子が含まれるのか気になったので調べてみた. つまり, [^0-9] をアルファベットとして扱っている [^a-zA-Z] を数字として扱っている のどちらかを確かめたく. ソースコード #include <stdio.h> #include <ctype.h> int</ctype.h></stdio.h></ctype.h>…

scanf()

scanf("%s", hoge); では '\n' を捨てることを忘れていました. まったく,大晦日だと言うのに識別子の特性を忘れててダメです. また,今年の進捗はCODE THANKS FESTIVAL2014 B日程をオンサイト参加できたこと,幅・深さ優先探索ができるようになったことく…

if文のスコープと使わない変数宣言

コンパイルできるコード #include <stdio.h> int main() { int i = 4444; printf("i: %d\n", i); if ( 1 ) { int j = 8888; printf("i: %d\nj: %d\n", i, j); } //printf("i: %d\nj: %d\n", i, j); return 0; } コンパイルできないコード その1 #include <stdio.h> int main() </stdio.h></stdio.h>…

適当な文字列処理を行ってから末端でナル文字処理するのが気持ち悪い

最初から全部のメモリをナル文字で埋めて初期化しておけばいい!(名案!)(適当) #include <stdio.h> #include <string.h> #define NUM 6 int main() { int i; char text[NUM] = "Hello"; for ( i = 0; i < NUM; ++i ) if ( '\0' == text[i] ) printf("text[%d]に'\\0'を発見</string.h></stdio.h>…

コマンドライン引数とsizeof()とstrlenと

ソースコード #include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]) { int i; char *ch = "Hello"; char ar[] = "Hello"; if ( 2 != argc ) { fprintf(stderr, "引数が足りません\n"); exit(-1); } printf("argv[1]: %s\n", argv[1]); printf("s</string.h></stdlib.h></stdio.h>…