簡體   English   中英

如何從數組中打印出指針指向的值

[英]How to printout a value a pointer is pointing at from an array

如標題中所示。 我正在嘗試打印出一個指針指向的值,但是沒有運氣。 下面的代碼顯示,Im將指針分配給數組中的隨機位置。

//Assign a pointer to a random location in array 
int val = rand() % 6;
int* p = &a[val];

到目前為止,這是唯一可行的方法,但是當我需要值printf("%p", &p);時,它只是打印出內存中的位置printf("%p", &p); 那么我又該如何打印指針指向的值呢?

編輯 :我的數組這樣聲明int a[6]; 即時通訊這樣填充它:

for (int i = 5; i >= 0; i--)
{
    a[i] = pal_num % 10;
    pal_num /= 10;
}

其中pal_num是6位數字

Edit2:調用函數print_status

while (!is_pal(a))
{
    if (!is_pal(a))
    {
        print_status(a, num_mov, p);
        ask_for_command(p, num_mov);
    }

取消引用指針,如下所示:

printf("%d", *p);

指針上的運算符*與運算符&相對。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM