-2

char ポインタが指すデータのサイズを取得したい。sizeof を使用すると、ポインターのサイズが返されることを理解しています。ただし、strlen() の代わりに sizeof() を使用し、char 配列の代わりに char* を使用する必要があります。

char *data = "Hello, World";
4

5 に答える 5

0

しない理由

   char data[] = "Hello World";
   printf("%d\n", sizeof(data));

代わりは

于 2013-10-06T06:24:14.240 に答える
0

それを得るには、このダミーの方法を実行する必要があると思います

int i = 0;
while (data[i] != '\0')
      i++;

i は変数データのデータのサイズです

于 2013-10-06T10:47:53.200 に答える
0

int main(int argc, char *argv[]) { char *d="hello,kl"; cout << sizeof(d); //これは 4 つしか返さないので、最善の方法は、独自の関数を作成し、必要なときにいつでも呼び出すことです。}

いいえ、c ++では sizeof operator をオーバーライドできません。したがって、ユーザー定義のメソッドを作成し、文字をカウントするようにし、代わりに sizeof を呼び出して関数を呼び出します

于 2013-10-06T06:21:33.693 に答える