c++ - vs2008调试出错, 结构体变量使用前未初始化.
巴扎黑
巴扎黑 2017-04-17 14:51:35
0
2
730
巴扎黑
巴扎黑

全員に返信(2)
迷茫

ポインタは使用前に初期化する必要があります

int main() {
    ArrayListPtr リスト;
    初期化(リスト);
    /*
    // 2 つの変更方法
    ArrayList リスト;
    Init(&list) // 以下の操作はポインターではありません。Access メンバーは `.` に変更する必要があります。
    
    //または
    ArrayListPtr リスト = (ArrayListPtr)malloc(sizeof(ArrayList));
    初期化(リスト);
    */
    
    printf("長さ: %d\n", リスト->長さ);
    printf("サイズ: %d\n", リスト->サイズ);
    0を返します。
}
いいねを押す +0
刘奇

最初のリストはダーティ ポインタであり、nullptr を割り当てず、正当なメモリを指しません。
2 番目のリストは正当な ArrayList アドレスです。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート