首页

文章

结构体指针数组怎么初始化?

发布网友 发布时间:2022-04-20 04:30

我来回答

4个回答

热心网友 时间:2023-08-31 16:08

对于像简单的结构体数据,如:
[cpp] view plaincopyprint?
struct A
{
int a;
int b;
};
A temp[4] = { 0 };
struct A
{
int a;
int b;
};
A temp[4] = { 0 };
直接进行初始化。但是如果在结构体中又包含一个类时,再这样进行初始化就会出现严重问题,再第二次使用他时不能成功初始化,直接会导致程序崩溃。如:
[cpp] view plaincopyprint?
struct A
{
int a;
int b;
string c;
};
A temp[4] = { 0 }; //error
struct A
{
int a;
int b;
string c;
};
A temp[4] = { 0 }; //error
而应该是这样的:
[cpp] view plaincopyprint?
struct A
{
int a;
int b;
string c;
};

/*
*temp:结构体指针
*len:结构体数组长度
*/
int InitAStruct(A *temp,int len)
{
for (int i = 0;i < len;i++) {
temp->a = 0;
temp->b = 0;
temp->c = "";
++temp;
}

return 0;
}

//A temp[4] = { 0 }; //error
A temp[4];
InitAStruct(temp,4);//right
struct A
{
int a;
int b;
string c;
};

/*
*temp:结构体指针
*len:结构体数组长度
*/
int InitAStruct(A *temp,int len)
{
for (int i = 0;i < len;i++) {
temp->a = 0;
temp->b = 0;
temp->c = "";
++temp;
}

return 0;
}

//A temp[4] = { 0 }; //error
A temp[4];
InitAStruct(temp,4);//right
因为其中包含了类(string)的存在,所以不能用普通方式进行初始化

热心网友 时间:2023-08-31 16:09

给你个较完善的方案
#include <iostream>
using namespace std;

struct employee
{
int id;
float salary;
};

int main()
{
employee *emptr1=new employee [4];
employee **emptr=&emptr1;
delete *emptr;//此处关掉开辟的空间,避免出现内存问题
return 0;
}

热心网友 时间:2023-08-31 16:09

employee **emptr=&(new employee [4]);
或者这样:
employee *emptr1=new employee [4];
employee **emptr=&emptr1;

热心网友 时间:2023-08-31 16:10

#include <iostream>
using namespace std;

struct employee
{
int id;
float salary;
};

int main()
{
employee *emptr;
emptr=new employee [4];

return 0;
}
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 C语言,结构体数组是什么意思?初始化又是什么?这... C语言结构体数组的初始化 c语言怎么初始化结构体中的数组 c语言 在结构体中 初始化其中的数组 C语言怎么给结构体的数组初始化?说的不太明白,具... 请问怎么对结构体里的数组初始化? c++ 结构体struct中的数组 初始化? 结构体里的数组怎么初始化 结构体数组初始化 仙萧剑雨小说txt全集免费下载 c语言,结构体数组怎么初始化 如何对结构体数组初始化 农村宅基地买卖协议还要有什么证件 农村宅基地如何进行买卖 农村宅基地买卖协议 农村宅基地可以买卖吗? 怎样合法买一块宅基地 农村宅基地买卖合同有效吗 农村宅基地买卖协议怎么写合法 想在农村买一块宅基地,都需要什么手续和流程? 结构体数组的初始化? 结构体数组怎么初始化 C++中结构体数组的初始化问题 结构数组怎样初始化和赋值 C语言结构体数组初始化的问题 苏家屯区社区工作者薪酬体系实施方案 社区党建网格化管理试点工作实施方案 社区开展城市社区分类精细治理试点工作实施方案? 华为手机怎么设置一键报警 企业联动型服务社区工作方案怎么写? 社区服务实施方案 怎样开展社区网格化管理工作方案 社区工作者想要辞职,何去何从? 怎么写社区服务方案啊? 20升电热水器功率有多大 老式贮水式热水器手动上水立式20升 一般电热水器里面的水量是不是可以自由调节的?比... 家用储水式电热水器怎么选购 储水式电热水器怎么用,储水式电热水器多大容量合适 储水式美的热水器加热需要多长时间
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com