Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah anda akan memaparkan perwakilan memori pembolehubah C?

Bagaimanakah anda akan memaparkan perwakilan memori pembolehubah C?

PHPz
Lepaskan: 2023-09-09 13:29:06
ke hadapan
745 orang telah melayarinya

Bagaimanakah anda akan memaparkan perwakilan memori pembolehubah C?

Di sini kita akan melihat cara mencetak perwakilan memori pembolehubah C. Di sini kita akan memaparkan integer, nombor titik terapung dan penunjuk.

Untuk menyelesaikan masalah ini kita perlu mengikuti langkah berikut -

  • Dapatkan alamat dan saiz pembolehubah
  • Taip hantar alamat ke penunjuk aksara untuk mendapatkan alamat bait
  • Sekarang gelung untuk mendapatkan saiz pembolehubah dan cetak jenis nilai penuding tuang.
  • Contoh

    #include <stdio.h>
    typedef unsigned char *byte_pointer; //create byte pointer using char*
    void disp_bytes(byte_pointer ptr, int len) {
        //this will take byte pointer, and print memory content
       int i;
       for (i = 0; i < len; i++)
          printf(" %.2x", ptr[i]);
       printf("</p><p>");
    }
    void disp_int(int x) {
       disp_bytes((byte_pointer) &x, sizeof(int));
    }
    void disp_float(float x) {
       disp_bytes((byte_pointer) &x, sizeof(float));
    }
    void disp_pointer(void *x) {
       disp_bytes((byte_pointer) &x, sizeof(void *));
    }
    main() {
       int i = 5;
       float f = 2.0;
       int *p = &i;
       disp_int(i);
       disp_float(f);
       disp_pointer(p);
       disp_int(i);
    }
    Salin selepas log masuk

    Output

    05 00 00 00
    00 00 00 40
    3c fe 22 00 00 00 00 00
    05 00 00 00
    Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah anda akan memaparkan perwakilan memori pembolehubah C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan