Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

Cでの#defineとconstの違い


#defineはプリプロセッサディレクティブです。したがって、#defineを使用してマクロを定義すると、コンパイル前にその値でコードに置き換えられます。したがって、コンパイラがコードについて何も知らない場合、その時点でマクロ値も置き換えられます。

定数は実際には変数です。この変数を宣言することにより、メモリユニットを占有します。ただし、定数型変数の値を直接更新することはできません。いくつかのポインタ値を使用して変更できます。

プログラマーは、マクロを使用する方がconstよりも優れていると考える場合があります。これは、メモリに追加のスペースを必要としないためですが、一部の優れたコンパイラーでは、最適化されたコードは影響しません。それらは非常に似ています。


  1. C#と.Netの違い

    C#はプログラミング言語であり、.NETはフレームワークです。 .NETには、.NETFrameworkの仮想コンポーネントである共通言語ランタイム(CLR)があります。 .NETにはC#があるだけでなく、それを介してVB、F#などを操作できます。 C#は.NETの一部であり、次の機能があります- ブール条件 自動ガベージコレクション 標準ライブラリ アセンブリのバージョン管理 プロパティとイベント デリゲートとイベント管理 使いやすいジェネリック インデクサー 条件付きコンパイル シンプルなマルチスレッド LINQおよびLambda式 Windowsとの統合

  2. GoとJavaの違い。

    行く Goは手続き型プログラミング言語です。プログラムはパッケージを使用して組み立てられます。動的言語に似たパターンを採用する環境をサポートします。 Java Javaはオブジェクト指向プログラミング言語です。 Javaは静かで高速、信頼性が高く、安全です。最も広く使用されている言語でもあります。 GoとJavaの重要な違いは次のとおりです。 Sr。いいえ。 キー 移動 Java 1 タイプ Goは手続き型プログラミング言語であり、動的言語と同様のパターンをサポートしています。 Javaはオブジェクト指向プログラミング言語です。 2 クラスのサポート