itoaのテンプレート化
以前、「itoaを自作する」という記事を連載しました。そのときの最後に、itoaをC++のテンプレートを使って効率化する方法をそのうち書くことを予告しました。今回は、その内容になります。
テンプレート化するにあたって、まずは何をテンプレート引数にするかを考えなければなりません。最も安易な方法は、整数値の型と文字型をテンプレート引数にするというものです。
36進法なんか使うのだろうか?
先日、「itoaを自作する」という記事を連載しました。itoa関数の仕様を見るたびに思うのですが、36進法なんか一体誰が使うのでしょうか? どんな用途があるのでしょうか? 私が知らないだけなのかもしれませんが...。
『絶対現場主義 C#入門』を購入しました
仕事でC#を使うこともそれなりにあるというのに、実は、これまで体系的に勉強したことがありませんでした。とはいえ、今さらその辺の入門書を読む気にもなれず、ずるずる来ていました。けれども、ちょうど実装者こと丸岡孝司さんが『絶対現場主義 C#入門』を書かれたということなので、いい機会なので購入して勉強することにしました。
itoaを自作する その5
かなり引っ張ってしまいましたが、今回で最終回です。これまでに実装したutoa関数を使ってitoa関数を実装することにしましょう。
itoaを自作する その4
今回は、最後に残った方法、すなわち再帰を使ってitoa関数を実装する方法についてです。例によって、「itoa関数を自作する」というタイトルにはなっていますが、まずはutoa関数を作っています。このutoa関数を使ったitoa関数の実装については、次回に書くことを予定しています。
itoaを自作する その3
今回は、いったん逆の並びの文字列を作っておき、後からそれを逆に並べ替える方法についてです。前回同様、「itoa関数を自作する」というタイトルにはなっていますが、まずはutoa関数を作っています。
itoaを自作する その2
前回に引き続き、itoa関数の自作について書いていきます。今回は、事前に桁数を求めるための計算を行い、その後、実際に各桁の文字(数字)を書き込んで方法についてです。なお、「itoa関数を自作する」というタイトルにはなっていますが、前回書いたように、まずはutoa関数を作っていますので、誤解のないようにお願いします。
itoaを自作する その1
itoaという関数は、非標準ゆえにあらゆる処理系で使えるとは限りません。ただ、itoa関数を使わずに、整数値を文字列に変換しようとすると、C90の標準関数の範疇ではsprintf関数を使うしかなく、ローエンドのマイコンなどでは許容できないでしょう。
そこで、itoa関数を自作しようという話になってきます。ベテランのプログラマであれば難なく自作することができると思いますが、必ずしもそんな人ばかりではありませんので、今回あえて取り上げてみることにしました。ちょっと長くなりそうなので、何回かの連載にしたいと考えています。
NC30で日本語識別子を使う
今回は、ルネサス製のマイコンM16CおよびR8C用のC/C++コンパイラであるNC30で日本語識別子を使う方法について考えてみることにします。以前、GCCで日本語識別子を使うという記事を書きましたが、それと同じ方法がNC30でも使えることが分かってきました。つまり、NC30でも国際文字名を使うことができるのです。
メンテナンス困難なソースコード
ずいぶん前に、メンテ不能なコードの件という記事を書いたことがあります。今回はその続編ともいうべき内容です。前回は、雇用を守るために自分以外にはメンテ困難または不能なコードを書く方法について、その善し悪しはいったん横に置いて検討してみました。今回は、それと共通点も多いとは思いますが、他者によるソースコードのパクリを防ぐ方法について検討してみることにします。
