ホームページ >バックエンド開発 >C++ >C におけるアンパサンド (&) 記号のさまざまな用途は何ですか?

C におけるアンパサンド (&) 記号のさまざまな用途は何ですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-19 04:07:47300ブラウズ

What are the Different Uses of the Ampersand (&) Symbol in C  ?

C サインインのアンパサンド (&) について理解する

C のアンパサンド (&) 演算子は、次のような複数の目的を果たします。

  1. アドレスの取得変数:
    変数の前に使用すると、& はそのメモリ アドレスを返します。これは、関数に変数アドレスを渡したり、ポインターを作成したりするためによく使用されます。
  2. 参照による引数の受け渡し:
    & 記号を使用して引数が関数に渡される場合、引数は渡されます。参考までに。これは、関数内の引数に加えられた変更は、渡された元の変数に適用されることを意味します。
  3. 参照変数の宣言:
    アンパサンドを使用して参照変数を宣言できます。 。参照変数は既存の変数のエイリアスであり、元のデータを直接表示できます。参照先の変数が変更されると、参照変数にも変更が反映されます。
  4. ビット単位の AND 演算子:
    & は、ビット単位の AND 演算子としても使用され、 2 つのオペランドの個々のビットに対する論理演算。結果のビットは、オペランド内の対応するビットが両方とも 1 の場合にのみ 1 に設定されます。

この例では、

class CDummy 
{
public:
   int isitme (CDummy& param);
};

int CDummy::isitme (CDummy& param)
{
  if (&param == this)
  { 
       return true; //ampersand sign on left side??
  }
  else 
  {    
       return false;
  }
}

¶m の & 記号が使用されています。 & は参照変数を宣言します。これは、param が渡されるオブジェクトを直接参照することを意味します。 isitme 関数の param の前は address-of 演算子で、param のアドレスと現在のオブジェクト (this) のアドレスを比較するために使用されます。アドレスが同じ場合、param が this と同じオブジェクトを参照していることを意味し、関数は true を返します。

この例では、参照の受け渡しとアドレス比較の両方にアンパサンド記号を使用する方法を示し、その例を示します。 C プログラミングの多用途性。

以上がC におけるアンパサンド (&) 記号のさまざまな用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。