动态分配内存,共用体,枚举类型

动态分配

根据程序的需要适时分配,且分配的大小就是程序分配的大小。
int *p,*q;
char *a,*b;
//给变量分配空间 
p=new int;//分配一个整型空间 
q=new int(1); //分配一个整型空间,而且将q赋初值为10
//给数组分配空间
a=new char[10];//给数组分配空间 
b=new char[10][10];//分配二维数组空间
//释放空间。当分配空间后,必须释放空间 
delete p;//释放p指向的空间 
delete[] a; //释放a指向的空间 

 


共用体:

成员共享的存储的结构体类型

一般形式:

union 共用体类型吗名{

    成员列表

};

定义共用体对象:

//先声明共用体类型再定义共用体对象
union 共用体类型名,共用体对象名列表; 
//同时声明共用体类型和定义共用体对象
union 共用体类型名{成员列表} 共用体对象名列表;
 //定义共用体对象
 union {成员列表} 共用体对象列表; 

特点:

1.修改一个成员会使其他成员发生改变

2.所有成员值是相同的,区别是不同类型决定使用这个值的全部或部分

3.所有成员起始地址相同


枚举:

形式:

enum 枚举类型 {命名枚举常量列表};

定义枚举对象:


enum 枚举类型名 { 命名枚举量列表} 枚举对象列表;

enum 枚举类型名 枚举对象名列表;

enum { 命名枚举量列表} 枚举对象名列表; 

赋值:

enum colors color;
color=1;//错误 
color=(colors)1;//正确 

一个小例子:

#include<iostream>
using namespace std;
enum week{Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday};//将情况存在week里 
int main()
{
	week weekday;//声明变量时可不写enum 
	enum week x=Sunday;
	for(int i=Monday;i<=Sunday;i++) 
	{
		weekday=week(i);
		if(weekday==x||weekday==Saturday)
		{
			cout<<i<<"---relaxing"<<endl;
		}
		else cout<<i<<"---working"<<endl;
	}
	return 0;
 } 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值