NULLの意味としては、定義値の0よりも、「どこも指していない」を表すものとして捉えた方が良いです。 ですので、「NULL= どこも指していない」で覚えておきましょう! このNULLはポインタを扱う上で非常に重要な定数となります。 これについては次のポインタの状態で解説していきたいと思...
C言語はコンピューターを理解する意味では適切。でもコンピューターの動きの基礎を理解してからやるべき。 ということです。 Qiitadonのトゥートとしては以下のあたりです。 「プログラミングを覚える」と「コンピューターの動きを覚える」は別問題だとは僕も思う。少なくともC言語を入門にす...
外池です。「誤差をなくす方法」の意味によりけりです。 そもそも、計算機のメモリーの量は有限なので、例えば、無理数を小数点数で厳密に表現することは不可能です。これは、内部表現を2進数としようが、10進数としようが、関係ありません。
【C言語】「NULL」の意味とNULLを用いた「安全なポインタの使い方」 ただ、free直後のNULL代入さえ行えば必ず二重解放を防ぐことができるというわけではないので注意してください。 動的確保したメモリ以外のアドレスを指定してはダメ また、free関数はあくまでもmalloc等で動的に確保したメモリを解...
この%[]は scanset 指定子であり、0-9、a-z、スペースおよびA-Zを使用すると、これらの文字のみを入力として使用できることを意味します。 それ以外は使用できません。 sは、コンピューターが文字列を入力として受け入れることを示します。
出ている文の意味はscanfの返値を使っていない、つまりこのコードにはエラー処理が足りないよね、という警告です。 -Wunused-result が(たぶん暗黙に)指定されているので、この警告が出ます。 エラーではなく警告なので、コンパイルは一応できているはずです。
二重否定は本当の意味でポジティブではないですよね? 二重否定を入れるとソースコードの可読性が下がります。例えば、カラーをサポートするためにincludeすべき実装が存在したとします。 #ifndef DONT_USE_COLORS ... do something ... #endif ささいなことに聞こえるかもしれませんが、大...
前述の規則は、OTT生成の型を持つC言語の構造体や、OTT生成の型に対して別名指定されているC言語の構造体を、オブジェクト型以外の型のデータのフェッチに使用できないという意味ではありません。単に、Pro*C/C++は自動的にそうした構造体を拡張しないということです。ユーザーは自由に一般的な構...
static 修飾変数は、任意の関数の外部で宣言することができ、単一のソースファイルのスコープ内で参照することができます。このような変数は内部リンク付きの静的変数と呼ばれ、その値は同じファイル内の関数でのみ使用できることを意味します。 両方の関数で k という名前のローカル変数がゼロに...
注記 BEA Tuxedo のマニュアルでは、さまざまな場所でスレッドについて説明しています。マルチスレッドのアプリケーションの説明で「スレッド」と記載されている場合は、文字どおりのスレッドを意味します。ただし、シングルスレッドとマルチスレッドの両方のアプリケーションに関するトピ...