異なるポインター操作とC言語のポインターの問題は何ですか?
ポインタは、値が別の変数のアドレス、つまりメモリ位置の直接アドレスである変数です。他の変数や定数と同様に、変数アドレスを格納するために使用する前に、ポインターを宣言する必要があります。
次のステートメントを検討してください-
int qty = 179;
メモリ内の変数の表現は次のとおりです-
次のようにポインタを宣言できます-
Int *p;
これは、「p」が別の整数変数のアドレスを保持するポインタ変数であることを意味します。
アドレス演算子(&)は、ポインタ変数を初期化するために使用されます。
例-
int qty = 175; int *p; p= &qty;
変数の値にアクセスするには、間接演算子(*)を使用します。
例-
「*」はアドレスでの値として扱うことができます。
2つのステートメントは、次のステートメントと同等です-
p = &qty; n = *p; n =qty
さまざまなポインタ操作
C言語でのポインタ操作を以下に説明します-
-
割り当て −&(アドレス演算子)を使用して、ポインタにアドレスを割り当てることができます。
-
価値の発見 −これは間接参照に他なりません。*演算子は、指定された場所に格納されている値を指定します。
-
ポインタアドレスを取得する −他の変数と同様に、ポインター変数には値だけでなくアドレスもあります。アドレス演算子を使用すると、ポインター自体が格納されていることがわかります。
-
ポインタに整数を追加する − +演算子を使用して、整数をポインターに追加したり、ポインターを整数に追加したりできます。ここでは、どちらの場合も、intに指定されたタイプのバイト数が乗算され、結果が元のアドレスに追加されます。
-
ポインタをインクリメントする −配列の次の要素に移動する配列要素です。
-
ポインタからintを減算する −ポインタから整数を減算するために–(マイナス)演算子を使用しています。整数にポイントされたタイプのバイト数が乗算され、その結果が元のアドレスから減算されます。
-
ポインタのデクリメント −ポインタをデクリメントし、前ではなく前の場所を指します。デクリメント演算子には、前置形式と後置形式の両方を使用できます。
-
減算 −2つのポインタの違いを見つけることができます。一般的に、私たちは要素がどれだけ離れているかを調べていました。
-
比較 −関係演算子を使用して、2つのポインターの値を比較します。
例
以下に示すのは、C言語でのポインター操作の機能を示すプログラムです-
#include<stdio.h> main ( ){ int x,y; //Declaring a pointer int *p; clrscr ( ); x= 10; //Assigning value to a pointer p = &x; y= *p; printf ("Value of x = %d", x); printf ("x is stored at address %u", &x); printf ("Value of x using pointer = %d", *p); printf ("address of x using pointer = %u", p); printf (“value of x in y = %d", y); *p = 25; printf ("now x = %d", x) getch ( ); }
出力
上記のプログラムを実行すると、次の出力が得られます-
Value of x = 10 x is stored at address = 5000 Address of x using pointer = 10 Address of x using pointer = 5000 Value of x in y = 10 Now x = 25
-
C言語でのさまざまな検索手法は何ですか?
検索手法とは、要素のリストから重要な要素を見つけることです。 指定された要素がリストに存在する場合、検索プロセスは成功したと言われます。 指定された要素がリストに存在しない場合、検索プロセスは失敗したと言われます。 C言語は、2種類の検索手法を提供します。それらは次のとおりです- 線形検索 二分探索 線形探索 キー要素の検索は直線的に行われます。 これは最も簡単な検索手法です。 リストが並べ替えられることは想定されていません。 制限-より多くの時間を消費し、システムの電力を削減します。 入力(i / p) ソートされていない要素のリスト、キー。 出力(o /
-
C言語での暗黙的および明示的な型変換とは何ですか?
あるデータ型を別のデータ型に変換することを型変換と呼びます。 暗黙の型変換 明示的な型変換 暗黙の型変換 オペランドのデータ型が異なる場合、コンパイラは暗黙的な型変換を提供します。 これは、小さなデータ型を大きなデータ型に変換することにより、コンパイラによって自動的に実行されます。 int i,x; float f; double d; long int l; ここで、上記の式は最終的に「double」値に評価されます。 例 以下は、暗黙的な型変換の例です- int x; for(x=97; x<=122; x++){ printf