malloc了多个结构体长度的内存后,怎样操作每个结构体

    xiaoxiao2025-10-16  9

    #include<stdio.h> #include<string> #include<iostream> #include <stdlib.h> using namespace std; typedef struct tagtest { int ID; char name[24]; }TEST; int main() { int num = 10; int ulmemsize = sizeof(TEST) * num; TEST *pstrfid = static_cast<TEST>(malloc(ulmemsize)); if(NULL == pstrfid) { return 0; } menset(pstrfid, 0); for(int i = 0; i < num; ++i) { pstrfid[i].ID = i;//或者这样也可以:(pstrfid + i)->ID。下标[]指的是结构体本身,+ 指的是指向第i个结构体的指针 pstrfid[i].name = "cyc"; } TEST *psttmp = &(pstrfid[5]); cout << psttmp->ID << psttmp->name << endl; free(pstrfid); return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-1303216.html
    最新回复(0)