簡體   English   中英

將數組設置為指針值

[英]Setting an array to a pointer value

我不是 C++ 開發人員,但我發現自己正在這樣做。 以下代碼示例中的r代表什么,c# 代碼等效是什么?

#include <iostream>

using namespace std;

int main()
{
    cout<<"Value:\n";

    uint32_t k[62];
    uint32_t* r = k;
    *r++;

    cout<<*r;
    
    return 0;
}

uint32_t* r = k; 使r指向未初始化數組k的第一個元素。

*r++; 遞增r以指向k的第二個元素,然后取消引用第二個元素的值(未定義)。 尊重是無操作的,因為沒有使用結果,所以該語句的作用與r++; . (*r)++; 將增加數組元素。

cout<<*r; 然后打印k的第二個元素的值,這會導致未定義的行為,因為該值未定義。

暫無
暫無

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

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