当前位置: 首页 > news >正文

seo公司上海武汉seo搜索优化

seo公司上海,武汉seo搜索优化,网站域名备案需要什么,广东网站设计与建设在运行时创建数组优于在编译时创建数组,对于结构(同一个结构可以存储多种类型的数据。)也是如此。需要在程序运行时为结构分配所需的空间,这也可以使用new运算符来完成。通过使用new,可以创建动态结构。同样&#xff0…

在运行时创建数组优于在编译时创建数组,对于结构(同一个结构可以存储多种类型的数据。)也是如此。需要在程序运行时为结构分配所需的空间,这也可以使用new运算符来完成。通过使用new,可以创建动态结构。同样,“动态”意味着内存是在运行时,而不是编译时分配的。由于类与结构非常相似,因此有关结构的技术也适用于类。

将new用于结构分为两步:创建结构和访问其成员。

例如,要创建一个未命名的inflatable类型,并将其地址赋给一个指针,可以这样做:

inflatable *ps = new inflatable;

这将把足以存储inflatable结构的一块可用内存的地址赋给ps。

关于访问成员。创建动态结构时,不能将成员运算符句点用于结构名,因为这种结构没有名称,只是知道它的地址。C++专门为这种情况提供了一个运算符:箭头成员运算符(->),该运算符由连字符和大于号组成,可用于指向结构的指针。例如,如果ps指向一个inflatable结构,则ps->price是被指向的结构的price成员。

如果结构标识符是结构名,则使用句点运算符;如果标识符是指向结构的指针,则使用箭头运算符。

另一种访问结构成员的方法,如果ps是指向结构的指针,则*ps就是被指向的值——结构本身。由于*ps是一个结构,因此(*ps).price是该结构的price成员

//4.21使用new创建一个未命名的结构,并演示了两种访问结构成员的指针表示法
#include<iostream>
using namespace std;struct inflatable
{char name[20];float volume;double price;
};int main()
{inflatable *ps = new inflatable;  //为结构分配内存cout << "Enter name of inflatable item: ";cin.get(ps->name, 20);cout << "Enter volume in cubic feet: ";cin >> (*ps).volume;cout << "Enter price: $";cin >> ps->price;cout << "Name: " << (*ps).name << endl;cout << "Volume: " << ps->volume << " cubic feet\n";cout << "Price: $" << ps->price << endl;delete ps;system("pause");return 0;
}

下面介绍一个使用new和delete来存储通过键盘输入的字符串的示例。程序清单4.22定义了一个函数getname(),该函数返回一个指向输入字符串的指针。该函数将输入读入到一个大型的临时数组中,然后使用new[]创建一个刚好能够存储该输入字符串的内存块,并返回一个指向该内存块的指针。对于读取大量字符串的程序,这种方法可以节省大量内存。

假设程序要读取100个字符串,其中最大的字符串包含79个字符,而大多数字符串都短得多。如果用char数组来存储这些字符串,则需要1000个数组,其中每个数组的长度为80个字符。这总共需要80000个字节,而其中的很多内存没有被使用。另一种方法是,它包含1000个指向char的指针,然后使用new根据每个字符串的需要分配相应数量的内存。是根据输入来分配内存,而不是为每个字符串使用一个大型数组。

//4.22定义了一个函数getname(),该函数返回一个指向输入字符串的指针。
//该函数将输入读入到一个大型的临时数组中,然后使用new[]创建一个刚好能够存储该输入字符串的内存块,并返回一个指向该内存块的指针
#include<iostream>
#include<string.h>
using namespace std;
char *getname(void);//函数原型:指函数的声明部分,包括函数名、参数列表和返回值类型,但不包括函数体。int main()
{char *name;name = getname();//分配字符串地址给name//一般来说,如果给cout提供一个指针,它将打印地址。但如果指针的类型为char*,则cout将显示指向的字符串,如上一行代码。//如果要显示字符串的地址,则必须将这种指针强制转换为另一种指针类型,如int*。如下面的代码。cout << name << " at " << (int *)name << endl;delete [] name;name = getname();//reuse freed memorycout << name << " at " << (int *)name << endl;delete[] name;system("pause");return 0;
}char *getname()//返回指针给新的字符串
{char temp[80];cout << "Enter last name: ";cin >> temp;char *pn = new char[strlen(temp) + 1];strcpy_s(pn,80,temp);//copy string into smaller space return pn;
}

http://www.hkea.cn/news/17820/

相关文章:

  • wordpress 会议 主题推广排名seo
  • 源码开发网站建设sem与seo的区别
  • 如何查网站的空间防恶意点击软件
  • 单位网站建设收费标准互联网推广引流
  • 网站有中文源码加英文怎么做关键词歌词完整版
  • 建设网站企业银行做网站的平台
  • 如何进行网站建设分析网站推广app软件
  • 做ppt的软件模板下载网站网站服务公司
  • 网站icp备案认证怎么做谷歌网页版入口在线
  • 高安网站建设艺考培训
  • 主流的网站开发技术百度推广后台管理
  • 传奇网站模板免费下载优化网络搜索引擎
  • 提升学历报考什么专业比较好seosem顾问
  • 做违法网站犯法吗推广费用一般多少钱
  • 网站版权该怎么做呢五种常用的网站推广方法
  • 周宁县建设局网站关键词挖掘站网
  • 做第三方团购的平台网站全网线报 实时更新
  • 六安建六安建设网站seo推广代理
  • 网站建设管理经验免费推广渠道有哪些
  • 网站备案信息真实性核验单 打印规格北京百度搜索优化
  • 网站建设有没有十大搜索引擎网站
  • 电子商务实网站的建设课件网站的优化策略方案
  • 喀什网站建设公司营销网络的建设
  • 药店网站模板营销软件代理推广
  • 站长工具seo综合查询columbu cat新闻今天的最新新闻
  • 网站托管哪家公司好常见的网络营销模式
  • 注册公司是在哪里办理seo建站工具
  • 做收集信息的网站域名seo查询
  • 云南省建设执业注册管理中心网站怎么优化自己网站的关键词
  • 怎么做北京赛车网站软文范文大全1000字