第13回 フリースタンディング環境 更新日:2021年10月10日 公開日:2021年9月26日 C++プログラマーのためのC言語入門プログラミング技術情報 フリースタンディング環境というのは、C++でいう自立処理系の環境のことです。C++の場合と同様、オペレーティングシステムの支援無しに動作する環境であり、一部のヘッダを除き、標準ライブラリは一切サポートされません。また、プ […] 続きを読む
第12回 標準Cライブラリ 公開日:2021年9月25日 C++プログラマーのためのC言語入門プログラミング技術情報 C言語(C89)ではC++(C++98)の標準ライブラリのうち、当然のことながら標準Cライブラリに当たる部分しかサポートされません。しかし、標準Cライブラリの範疇でも若干のちがいがあります。 std名前空間 C++の標準 […] 続きを読む
第11回 その他、細部のちがい 公開日:2021年9月24日 C++プログラマーのためのC言語入門プログラミング技術情報 ここでは、他の回で採り上げなかったC++(C++98)とC言語(C89)の細かなちがいについて解説します。 可変個の実引数を取る関数の仮引数並び C++では、printf 関数のような可変個の実引数を受け取る関数の仮引数 […] 続きを読む
第10回 メモリの動的割付け 公開日:2021年9月23日 C++プログラマーのためのC言語入門プログラミング技術情報 メモリの動的割付け、あるいはオブジェクトの動的生成の方法は、C++とC言語では大きく異なります。 newおよびdelete演算子はない C++でオブジェクトの動的生成と解体に使っていたnew演算子とdelete演算子は、 […] 続きを読む
第9回 文字定数と文字列リテラル 公開日:2021年9月22日 C++プログラマーのためのC言語入門プログラミング技術情報 文字定数と文字列リテラルについても、C++とC言語では微妙なちがいがあります。また、C++では「文字リテラル」といいますが、C言語では「文字定数」という用語が使われています。 文字定数 C++の文字リテラルはchar型で […] 続きを読む
第8回 構造体と共用体と列挙体 公開日:2021年9月21日 C++プログラマーのためのC言語入門プログラミング技術情報 C言語にクラスはありませんが、構造体と共用体ならあります。また、C++と同様、列挙体も使うことができます。 タグ名だけで型名にならない C++ではクラスや列挙体のタグ名だけで型名になりましたが、C言語では明示的にstru […] 続きを読む
第7回 修飾子と記憶クラス指定子 公開日:2021年9月20日 C++プログラマーのためのC言語入門プログラミング技術情報 C言語(C89)にもC++(C98)と同じ修飾子(constおよびvolatile)や記憶クラス指定子(extern, static, auto, register, および typedef)が備わっています。ただし、m […] 続きを読む
第6回 プログラムの開始と終了 公開日:2021年9月19日 C++プログラマーのためのC言語入門プログラミング技術情報 C言語におけるプログラムの開始と終了の仕様は、C++とくらべるとずっと単純です。これは主として、C言語にはコンストラクタやデストラクタを持つオブジェクトが存在しないからです。 プログラムの開始 プログラムの開始時には、C […] 続きを読む
第5回 型と型変換 公開日:2021年9月18日 C++プログラマーのためのC言語入門プログラミング技術情報 C言語(C89)では、C++(C++98)にはあるいくつかの型がサポートされません。また、型変換についてはかなり仕様が異なりますので、今回はそのあたりの解説を行います。 C言語にはない型 構造体と共用体以外のクラスがない […] 続きを読む
第4回 注釈(コメント) 公開日:2021年9月18日 C++プログラマーのためのC言語入門プログラミング技術情報 注釈(コメント)について書くべき内容はごくわずかですが、他に分類するのが難しかったのと、重要なのとで、あえて1回を割くことにしました。 C++では、//から行末までの形式と、/*から*/までの形式の二種類の注釈を使うこと […] 続きを読む