C++
C++をあまり深入りせずにBetter Cとして使うとこうなる。 事前準備:文法面の細かな差異を押さえる 細かいところにC言語とC++の非互換な部分があるので、それを押さえておく。例えば: 標準ライブラリのヘッダファイル名 例えばassert.hではなくcassert。ま…
id:eel3:20151102:1446476928 のhcasl、TDM-GCC 4.8.1でビルドしたC言語/C++版バイナリを手元のCygwin(64bit)で実行すると激遅なの。 $ make -f Makefile_mingw g++ -finput-charset=cp932 -Wall -std=c++11 -pedantic hcasl.cpp -o hcasl $ time perl -e…
※2015/11/15追記:現段階では8言語から12言語に増えている。その昔 id:eel3:20120129:1327845759 なんてことをやったのだが、性懲りもなくまた同じようなことをやってみた。作ったものはこちらに置いてある。 GitHub - eel3/hcasl: Command line tool for "h…
どうも一部で微妙に盛り上がったらしい。 xcode - c言語での乱数生成 - スタック・オーバーフロー Mac、iOSで、rand()関数の疑似乱数アルゴリズムがヘン! - Qiita なので書いておく。 rand(3)の特徴 CやC++の標準ライブラリにはrand(3)という擬似乱数を生成…
Qtに用意されているデバッグ表示用のマクロ qDebug。こいつはデフォルトではリリースビルドでもデバッグ表示の処理を行う。無効化したいなら、別途 QT_NO_DEBUG_OUTPUT を定義する必要がある。ここまでは、まあ、よくある話だろう。今回つまづいたのは: qDe…
本エントリ名のような質問にたいする回答をよく忘れてしまうので、ここにメモしておく。仮引数にvoidを書く/書かないについては、C言語とC++で言語仕様での扱いが異なる。C言語の場合は、関数の宣言か定義かによっても差異がある。この違いを表にするとこん…
関数の仮引数(整数型)にて、プロトタイプ宣言にはconst修飾子がついておらず、関数本体にはconst修飾子がついていたとする。この状態でコンパイルしてリンクしてみたらどうなるだろうか? コンパイル/リンク時にエラーになるのか、警告が出るのか、スルー…
これを見て、 リリカル☆Lisp開発日記 » Blog Archive » 恐怖! 64bitと0と可変長引数の組み合わせ 最近は『CプログラミングFAQ』を読む人も少ないのだろうかと思ったのだけど、よく考えればあの本はまた絶版になってるんだよなあ。それに例えばC言語を経ずにC…
C90相当のC言語で実装したライブラリがありまして、C++でアプリを作る際にこいつをちょろっと使っちまおうと考えたわけですな。ところがそのライブラリのヘッダファイルにこんな感じの構造体の定義が書かれていたのです。なんてことでしょう。 /* test.h */ …
プログラミングの勉強をしていると、異なる話題なのに似たような名前が付けられていて混乱することがある。例えば変数における「参照型」と関数/プロシージャ/サブルーチン/メソッド等々の引数における「参照渡し」は異なる概念なのだが、どちらも「参照…
何の気の迷いか、それとも魔が差したのか、夜中に思いついてライフゲームを実装するという暴挙*1に出てみた。夜中で頭の働き低下していたので、取りあえず書きなれているC++を使用。本来はC言語の方が書きなれているはずだが、ここ最近C++を弄くっている影響…
時代遅れひとりFizzBuzz祭り、今回はC++。前回がC言語だったのでその流れでC++、であると同時に、C言語に次いで仕事でよく使う言語だから、という理由もある。C++は苦手だ。機能が多くて且つ複雑怪奇な所が多々あるあたりが苦手だ。しかし機能が多いというこ…
もう8年以上たっているというのに、このタイトルは(ryプログラミング初心者のC++の学習方法というと、 まずC言語と共通の機能を学ぶ。 次にクラスとオブジェクト指向プログラミングを学ぶ。 という古典的な方法が有名だけど、正直なところ古典的すぎてあまり…
テキストファイルをソートしたくなった時、どうすればよいのだろうか?最近vimのC/C++用辞書ファイルを昇順にソートした。辞書ファイルにはC/C++のキーワードが450個ぐらい書いてある。キーワードは改行で区切られているので、1行に1単語だ。最初に思いつく…