sizeofを使用せずにC/C++で配列のサイズを検索する
このプログラムでは、sizeofを使用せずにC /C++で配列のサイズを検索します。
アルゴリズム
Begin Initialize the elements of the array. &a => This is the pointer to array which points at the same memory address as a. &a + 1 => It points at the address after the end of the array. *(a+1) => Dereferencing to *(&a + 1) gives the address after the end of the last element. *(a+1)-a => Subtract the pointer to the first element to get the length of the array. Print the size. End.
サンプルコード
#include <iostream> using namespace std; int main() { int a[] = {6,7,5,3,1,4,2,10,9}; int s = *(&a + 1) - a; cout << "Number of elements in array is "<< s; }
出力
Number of elements in array is 9
-
C ++で条件演算子を使用せずに、配列から最大の要素を検索します
いくつかの要素を持つ配列Aがあるとします。配列Aで最大の要素を見つける必要がありますが、制約は、条件演算子を使用できないことです。したがって、A =[12、63、32、24、78、56、20]の場合、最大要素は78になります。 この問題を解決するために、ビット単位のAND演算を使用します。最初に、1つの追加要素INT_MAX(すべてのビットが1)を配列に挿入します。次に、配列から任意のペアの最大AND値を見つけようとします。この取得された最大値には、INT_MAXのAND値と元の配列の最大要素が含まれ、これが結果になります。 例 #include <iostream> #in
-
C#でsizeofを使用せずに変数のサイズを見つける方法は?
変数のサイズを取得するには、sizeofを使用します。 int x; x = sizeof(int); sizeofを使用せずに変数のサイズを取得するには、次のコードを試してください- // without using sizeof byte[] dataBytes = BitConverter.GetBytes(x); int d = dataBytes.Length; これが完全なコードです。 例 using System; class Demo { public static void Main() { int x;