C ++

 Computer >> コンピューター >  >> プログラミング >> C ++
  1. C ++で2つの文字列リテラルを連結するとどうなりますか?

    このセクションでは、文字列と文字列リテラルの別のプロパティを確認します。 C ++で2つの文字列を連結する場合は、いくつかのことを覚えておく必要があります。 x + yが文字列連結の式である場合、xとyは両方とも文字列です。次に、この式の結果は、文字列xの文字の後に文字列yの文字が続くコピーになります。 xまたはyのいずれかを文字列リテラルまたは文字にすることができますが、両方にすることはできません。両方が文字列リテラルの場合、連結されません。 サンプルコード #include<iostream> using namespace std; main(){  

  2. C++でのスタックの巻き戻し

    ここでは、スタックの巻き戻しの意味を確認します。一部の関数を呼び出すと、アドレスが呼び出しスタックに格納され、関数から戻った後、アドレスがポップアウトされて、残された場所で作業が開始されます。 スタックの巻き戻しは、実行時に関数呼び出しのスタックエントリが削除されるプロセスです。スタック要素を削除するには、例外を使用できます。内部関数から例外がスローされた場合、スタックのすべてのエントリが削除され、メインの呼び出し元関数に戻ります。 例を通して、スタックの巻き戻しの効果を見てみましょう。 サンプルコード #include <iostream> using namespace s

  3. Cにおける演算子の優先順位と結合性

    演算子の優先順位は、式内の用語のグループ化を決定し、式の評価方法を決定します。特定の演算子は他の演算子よりも優先されます。たとえば、乗算演算子は加算演算子よりも優先順位が高くなります。 たとえば、x =7 + 3 * 2;ここでは、演算子*の優先順位が+よりも高いため、xには20ではなく13が割り当てられます。したがって、最初に3 * 2が乗算され、次に7に加算されます。 ここでは、優先順位が最も高い演算子が表の上部に表示され、優先順位が最も低い演算子が下部に表示されます。式内では、優先順位の高い演算子が最初に評価されます。 カテゴリ オペレーター 結合性 接尾辞 。 ++ --

  4. Cでの++演算子を使用したprintfの実行

    いくつかの問題では、いくつかのprintf()ステートメントに++演算子を含む行が含まれていることがわかります。競争試験のいくつかの質問では、そのコードの出力を見つけるためにこれらの種類の質問を見つけることができます。このセクションでは、そのような質問の例を見て、何が答えになるかを考えてみます。 サンプルコード #include<stdio.h> int main() {    volatile int x = 20;    printf("%d %d\n", x, x++);    x = 20; &

  5. C演算子を使用せずに2つの数値の合計を求めるプログラム

    このセクションでは、プログラムに演算子を使用せずに2つの数値の合計を出力する方法を説明します。 この問題は注意が必要です。この問題を解決するために、printf()ステートメントの最小幅フィールドを使用しています。たとえば、printf()を使用して「Hello」の前にx個のスペースを入れたい場合は、これを記述できます。ここで、printf()は幅を取り、次に印刷される文字を取ります。この場合、空白を書き込んでいます。 サンプルコード #include<stdio.h> main() {    int x = 10;    printf(&

  6. 三項演算子?:vsif…elsein C / C ++

    三項演算子は条件演算子であることがわかっています。この演算子を使用すると、いくつかの条件をチェックし、その条件に従っていくつかのタスクを実行できます。三項演算子を使用せずに、if-else条件を使用して同じことを行うこともできます。 三項演算子とif-else条件の効果は、ほとんどの場合同じです。状況によっては、if-else条件を使用できない場合があります。そのような状況では、三項演算子を使用する必要があります。この状況の1つは、定数変数に値を割り当てることです。 if-else条件を使用して定数変数に値を割り当てることはできません。しかし、三項演算子を使用すると、定数変数に値を割り当てる

  7. C++出力演算子を使用して先行ゼロを出力する

    ここでは、C++の出力として先行ゼロを出力する方法を説明します。いくつかの数値の前にいくつかのゼロを直接置くと、すべてのゼロが破棄され、正確な数値のみが出力されることがわかっています。 Cでは、フォーマット指定子のいくつかのオプションを使用して、この問題を解決できます。 C ++では、iomanipライブラリを使用して出力シーケンスを操作できます。このライブラリでは、前のテキストと現在のテキストの間にスペースを空けるためのsetw()関数を取得します。次に、setfill(char)関数を使用して、そのフィールドにいくつかの文字を追加できます。 setw()とsetfill()について理解

  8. C++プログラムでのコマンドラインパラメータの解析

    実行時にコマンドラインからC++プログラムにいくつかの値を渡すことができます。これらの値はコマンドライン引数と呼ばれ、多くの場合、特にコード内でこれらの値をハードコーディングするのではなく、外部からプログラムを制御する場合に、プログラムにとって重要です。 コマンドライン引数は、main()関数引数を使用して処理されます。ここで、argcは渡される引数の数を示し、argv[]はプログラムに渡される各引数を指すポインター配列です。以下は、コマンドラインから引数が提供されているかどうかを確認し、それに応じてアクションを実行する簡単な例です- サンプルコード #include <iostrea

  9. C ++で名前空間を使用する方法は?

    この記事では、C++コードで名前空間を使用する方法を説明します。 同じクラスに同じ名前の2人のZaraがいる状況を考えてみましょう。それらを明確に区別する必要があるときはいつでも、名前とともにいくつかの追加情報を使用する必要があります。たとえば、地域、別の地域に住んでいる場合、母親や父親の名前などです。 C++アプリケーションでも同じ状況が発生する可能性があります。たとえば、xyz()という関数を持つコードを記述していて、同じ関数xyz()を持つ別のライブラリが利用可能であるとします。これで、コンパイラーは、コード内で参照しているxyz()関数のバージョンを知る方法がありません。 名前空

  10. C ++でPI定数を使用するにはどうすればよいですか?

    ここでは、C++プログラムでPI定数を使用する方法を説明します。 PI定数はcmathヘッダーファイルにあります。定数の名前はM_PIです。そのヘッダーファイルをインクルードし、定数を使用して操作を実行するだけです。 次の例では、PI定数を使用して円の面積を見つける方法を示します。 サンプルコード #include <iostream> #include <cmath> using namespace std; float area(int radius) {    return M_PI * (radius * radius); } int ma

  11. C ++でmain()に再帰することは合法ですか?

    CまたはC++では、main関数は他の関数と同じです。したがって、他のいくつかの関数に存在する機能を、メイン関数にも使用できます。 次のプログラムでは、main()が再帰的に使用して、いくつかの数値を逆の順序で出力する方法を確認します。 サンプルコード #include <iostream> using namespace std; int main () {    static int x = 10;    cout << x-- << endl;    if(x) {    

  12. C++での乱数生成

    C++を使用して乱数を生成する方法を見てみましょう。ここでは、0からある値の範囲の乱数を生成しています。 (このプログラムでは、最大値は100です。) この操作を実行するために、srand()関数を使用しています。これはCライブラリにあります。関数voidsrand(unsigned int seed) 関数randで使用される乱数ジェネレーターをシードします。 srand()の宣言は次のようになります: void srand(unsigned int seed) シードというパラメータを取ります 。これは、疑似乱数ジェネレーターアルゴリズムによってシードとして使用される整数値です。この

  13. 0(ゼロ)とは何ですか-C++の10進リテラルまたは8進リテラル

    数値の前の0(ゼロ)は基本的に8進数のリテラルです。 C / C ++では、実際の数値の前にゼロを入力することにより、8進数リテラルを使用できます。たとえば、8進数が25の場合、025と書く必要があります。 サンプルコード #include <stdio.h> int main() {    int a = 025;    int b = 063;    printf("Decimal of 25(Octal) is %d\n", a);    printf("Decim

  14. C++プログラムのi++と++iの間にパフォーマンスの違いはありますか?

    i++と++iの効果的な結果は同じです。唯一の違いは、i ++は割り当て後にiの値を増やし、++ iの場合、最初に値を増やしてからその値を割り当てることです。次のコードで違いがわかります。 サンプルコード #include<iostream> using namespace std; int main() {    int x = 3, y, z;    y = x++;    z = ++x;    cout << x << ", " << y

  15. C ++でコマンドライン引数を解析する方法は?

    実行時にコマンドラインからC++プログラムにいくつかの値を渡すことができます。これらの値はコマンドライン引数と呼ばれます また、多くの場合、これらの値をコード内にハードコーディングするのではなく、外部からプログラムを制御する場合は特に、プログラムにとって重要です。 コマンドライン引数は、main()関数の引数を使用して処理されます。ここで argc 渡された引数の数を指し、 argv [] プログラムに渡される各引数を指すポインタ配列です。以下は、コマンドラインから引数が提供されているかどうかを確認し、それに応じてアクションを実行する簡単な例です- サンプルコード #include &l

  16. C++でのコピーの省略

    コピーの省略は、コピーの省略とも呼ばれます。これは、コンパイラの最適化手法の1つです。オブジェクトの不要なコピーを回避します。現在のほとんどのコンパイラは、このコピーの省略手法を使用しています。 1つのサンプルコードを使用して、どのように機能するかを見てみましょう。 サンプルコード #include <iostream> using namespace std; class MyClass {    public:       MyClass(const char* str = "\0") {  //

  17. C++での関数のオーバーロードと戻り型

    同じスコープ内の同じ関数名に対して複数の定義を持つことができます。関数の定義は、引数リスト内の引数のタイプや数によって互いに異なる必要があります。戻り値のタイプのみが異なる関数宣言をオーバーロードすることはできません。 関数のオーバーロードは、基本的にコンパイル時のポリモーフィズムです。関数のシグネチャをチェックします。シグニチャが同じでない場合は、オーバーロードされる可能性があります。関数の戻り型は、関数のオーバーロードに影響を与えません。リターンタイプが異なる同じ関数シグネチャはオーバーロードされません。 以下は、同じ関数print()を使用して異なるデータ型を出力する例です サンプル

  18. C ++プログラムのRTTI(実行時型情報)

    このセクションでは、C ++のRTTI(実行時型情報)とは何かを説明します。 C ++では、RTTIはメカニズムであり、実行時にオブジェクトのデータ型に関する情報を公開します。この機能は、クラスに少なくとも1つの仮想関数がある場合にのみ使用できます。これにより、プログラムの実行時にオブジェクトのタイプを判別できます。 次の例では、最初のコードは機能しません。 「(Base *型の)dynamic_castbase_ptrを「classDerived*」と入力することはできません(ソース型はポリモーフィックではありません)」のようなエラーが生成されます。このエラーは、この例には仮想関数がないた

  19. C++関数パラメーターでの評価の順序

    いくつかの関数に異なる引数を渡します。ここで、関数パラメーターの評価の順序について1つの質問が頭に浮かぶかもしれません。左から右ですか、それとも右から左ですか? 評価順序を確認するには、簡単なプログラムを使用します。ここでは、いくつかのパラメータが渡されています。出力から、それらがどのように評価されるかを見つけることができます。 例 #include<iostream> using namespace std; void test_function(int x, int y, int z) {    cout << "The value

  20. gccのC/C ++ソースからアセンブラ出力を取得するにはどうすればよいですか?

    ここでは、gccを使用してCまたはC++コードからアセンブラー出力を生成する方法を説明します。 gccは、実行中にソースコードからすべての中間出力を取得するための優れた機能を提供します。アセンブラ出力を取得するには、gccにオプション「-S」を使用できます。このオプションは、コンパイル後、アセンブラーに送信する前の出力を表示します。このコマンドの構文は次のとおりです。 gcc –S program.cpp では、出力方法を見てみましょう。ここでは、簡単なプログラムを使用しています。このプログラムでは、2つの数値が変数xとyに格納され、合計が別の変数に格納された後、結果が出力され

Total 5992 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:47/300  20-コンピューター/Page Goto:1 41 42 43 44 45 46 47 48 49 50 51 52 53