C/C++

簡単なshared_ptrを実装してみた

なんか流行ってるらしいし、久しぶりにC++な趣味のコーディングしたかったので、一部機能を省いた簡単なshared_ptrを実装してみた(もちろんスレッドアンセーフ)。shared_ptrの挙動って確かこんなんだっけ……。

C言語の関数の仮引数における配列型宣言の危険性について

#lowhacksでnyaxt, nishioが配列とポインタの違いについて議論していた。その中で関数の仮引数を配列として宣言した場合の挙動はどうなるのか、という話題にたどり着いた。結果僕は非常に危険だと思った。 しかし、まさかそんなことする人はいないだろうと、…

main充になった

class Main { public: Main* main(Main* main){ return main; }; }; void main(void) { Main* main = new Main(); main->main(main)->main(main); delete main; }

Live2chからTwitterに今見ているスレッドを投げるソフト作ったよ

mata2chw.exe 〜 また2ちゃんねる見てるw ∧_∧ ∧_∧ (´

ハチロク世代のskypeチャットでライフゲームの実装が話題に

どう書く?.orgで出題されていたライフゲームの実装のがハチロク世代のskypeチャットで話題にあがったので何も考えず勢いで書いてみた。風呂で。 微妙にお題に沿わないので、投稿せずにここに書いておく。 /* life.c compile: $ gcc -o life life.c usage: $…

コンソールのプログレスバーを作ってみた

何も目新しいものではないです。試しにちょっと作ってみただけです。1秒ごとに5%進む固定式です。 #include <stdio.h> #include <unistd.h> int main(void) { setbuf(stdout, NULL); for(int i=0;i<=20;i++) { int j=0; for(;j</unistd.h></stdio.h>

cursesで遊んでみた

curses*1の使い方のお勉強。 インストール sudo apt-get install ncurses-dev コンパイル リンクするのを忘れないように。 g++ -o sample sample.cpp -lcurses 練習プログラム 0から9までをキー入力がある度に1ずつ増やして表示する。 #include <curses.h> int main(vo</curses.h>…