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

安徽建设工程信息网新网站哪儿登陆seo关键词优化工具

安徽建设工程信息网新网站哪儿登陆,seo关键词优化工具,网站建设难不难,网站的导航用css怎么做C 数据类型 一、C 数据类型 使用编程语言进行编程时,需要用到各种变量来存储各种信息。变量保留的是它所存储的值的内存位置。这意味着,当创建一个变量时,就会在内存中保留一些空间。 可能需要存储各种数据类型(比如字符型、宽…

@C++ 数据类型

一、C++ 数据类型

使用编程语言进行编程时,需要用到各种变量来存储各种信息。变量保留的是它所存储的值的内存位置。这意味着,当创建一个变量时,就会在内存中保留一些空间。

可能需要存储各种数据类型(比如字符型、宽字符型、整型、浮点型、双浮点型、布尔型等)的信息,操作系统会根据变量的数据类型,来分配内存和决定在保留内存中存储什么

二、基本的内置类型

C++ 为程序员提供了种类丰富的内置数据类型和用户自定义的数据类型。下表列出了七种基本的 C++ 数据类型
在这里插入图片描述
wchar_t 是这样来的:

typedef short int wchar_t;

所以 wchar_t 实际上的空间是和 short int 一样。

一些基本类型可以使用一个或多个类型修饰符进行修饰:
signed
unsigned
short
long

下表显示了各种变量类型在内存中存储值时需要占用的内存,以及该类型的变量所能存储的最大值和最小值。

注意:不同系统会有所差异,一字节为 8 位。

注意:默认情况下,int、short、long都是带符号的,即 signed。

注意:long int 8 个字节,int 都是 4 个字节,早期的 C 编译器定义了 long int 占用 4 个字节,int 占用 2 个字节,新版的 C/C++ 标准兼容了早期的这一设定
类型 位 范围
在这里插入图片描述
注意,各种类型的存储大小与系统位数有关,但目前通用的以64位系统为主。

以下列出了32位系统与64位系统的存储大小的差别(windows 相同):
在这里插入图片描述
从上表可得知,变量的大小会根据编译器和所使用的电脑而有所不同。

下面实例会输出您电脑上各种数据类型的大小

#include<iostream>  
#include <limits>using namespace std;  int main()  
{  cout << "type: \t\t" << "************size**************"<< endl;  cout << "bool: \t\t" << "所占字节数:" << sizeof(bool);  cout << "\t最大值:" << (numeric_limits<bool>::max)();  cout << "\t\t最小值:" << (numeric_limits<bool>::min)() << endl;  cout << "char: \t\t" << "所占字节数:" << sizeof(char);  cout << "\t最大值:" << (numeric_limits<char>::max)();  cout << "\t\t最小值:" << (numeric_limits<char>::min)() << endl;  cout << "signed char: \t" << "所占字节数:" << sizeof(signed char);  cout << "\t最大值:" << (numeric_limits<signed char>::max)();  cout << "\t\t最小值:" << (numeric_limits<signed char>::min)() << endl;  cout << "unsigned char: \t" << "所占字节数:" << sizeof(unsigned char);  cout << "\t最大值:" << (numeric_limits<unsigned char>::max)();  cout << "\t\t最小值:" << (numeric_limits<unsigned char>::min)() << endl;  cout << "wchar_t: \t" << "所占字节数:" << sizeof(wchar_t);  cout << "\t最大值:" << (numeric_limits<wchar_t>::max)();  cout << "\t\t最小值:" << (numeric_limits<wchar_t>::min)() << endl;  cout << "short: \t\t" << "所占字节数:" << sizeof(short);  cout << "\t最大值:" << (numeric_limits<short>::max)();  cout << "\t\t最小值:" << (numeric_limits<short>::min)() << endl;  cout << "int: \t\t" << "所占字节数:" << sizeof(int);  cout << "\t最大值:" << (numeric_limits<int>::max)();  cout << "\t最小值:" << (numeric_limits<int>::min)() << endl;  cout << "unsigned: \t" << "所占字节数:" << sizeof(unsigned);  cout << "\t最大值:" << (numeric_limits<unsigned>::max)();  cout << "\t最小值:" << (numeric_limits<unsigned>::min)() << endl;  cout << "long: \t\t" << "所占字节数:" << sizeof(long);  cout << "\t最大值:" << (numeric_limits<long>::max)();  cout << "\t最小值:" << (numeric_limits<long>::min)() << endl;  cout << "unsigned long: \t" << "所占字节数:" << sizeof(unsigned long);  cout << "\t最大值:" << (numeric_limits<unsigned long>::max)();  cout << "\t最小值:" << (numeric_limits<unsigned long>::min)() << endl;  cout << "double: \t" << "所占字节数:" << sizeof(double);  cout << "\t最大值:" << (numeric_limits<double>::max)();  cout << "\t最小值:" << (numeric_limits<double>::min)() << endl;  cout << "long double: \t" << "所占字节数:" << sizeof(long double);  cout << "\t最大值:" << (numeric_limits<long double>::max)();  cout << "\t最小值:" << (numeric_limits<long double>::min)() << endl;  cout << "float: \t\t" << "所占字节数:" << sizeof(float);  cout << "\t最大值:" << (numeric_limits<float>::max)();  cout << "\t最小值:" << (numeric_limits<float>::min)() << endl;  cout << "size_t: \t" << "所占字节数:" << sizeof(size_t);  cout << "\t最大值:" << (numeric_limits<size_t>::max)();  cout << "\t最小值:" << (numeric_limits<size_t>::min)() << endl;  cout << "string: \t" << "所占字节数:" << sizeof(string) << endl;  // << "\t最大值:" << (numeric_limits<string>::max)() << "\t最小值:" << (numeric_limits<string>::min)() << endl;  cout << "type: \t\t" << "************size**************"<< endl;  return 0;  
}

本实例使用了 endl,这将在每一行后插入一个换行符,<< 运算符用于向屏幕传多个值,sizeof() 运算符用来获取各种数据类型的大小。

当上面的代码被编译和执行时,它会产生以下的结果,结果会根据所使用的计算机而有所不同:

type: size**
bool: 所占字节数:1 最大值:1 最小值:0
char: 所占字节数:1 最大值: 最小值:€
signed char: 所占字节数:1 最大值: 最小值:€
unsigned char: 所占字节数:1 最大值: 最小值:
wchar_t: 所占字节数:2 最大值:65535 最小值:0
short: 所占字节数:2 最大值:32767 最小值:-32768
int: 所占字节数:4 最大值:2147483647 最小值:-2147483648
unsigned: 所占字节数:4 最大值:4294967295 最小值:0
long: 所占字节数:4 最大值:2147483647 最小值:-2147483648
unsigned long: 所占字节数:4 最大值:4294967295 最小值:0
double: 所占字节数:8 最大值:1.79769e+308 最小值:2.22507e-308
long double: 所占字节数:16 最大值:1.18973e+4932 最小值:3.3621e-4932
float: 所占字节数:4 最大值:3.40282e+038 最小值:1.17549e-038
size_t: 所占字节数:8 最大值:18446744073709551615 最小值:0
string: 所占字节数:8
type: size**


三、typedef 声明

可以使用 typedef 为一个已有的类型取一个新的名字。下面是使用 typedef 定义一个新类型的语法:

typedef type newname;

例如,下面的语句会告诉编译器,feet 是 int 的另一个名称:

typedef int feet;

现在,下面的声明是完全合法的,它创建了一个整型变量 distance:

feet distance;

四、枚举类型

枚举类型(enumeration)是C++中的一种派生数据类型,它是由用户定义的若干枚举常量的集合。

如果一个变量只有几种可能的值,可以定义为枚举(enumeration)类型。所谓"枚举"是指将变量的值一一列举出来,变量的值只能在列举出来的值的范围内。

创建枚举,需要使用关键字 enum。枚举类型的一般形式为:

enum 枚举名{ 标识符[=整型常数], 标识符[=整型常数], 
... 标识符[=整型常数]
} 枚举变量;

如果枚举没有初始化, 即省掉"=整型常数"时, 则从第一个标识符开始。

例如,下面的代码定义了一个颜色枚举,变量 c 的类型为 color。最后,c 被赋值为 “blue”。

enum color { red, green, blue } c;
c = blue;

默认情况下,第一个名称的值为 0,第二个名称的值为 1,第三个名称的值为 2,以此类推。但是,您也可以给名称赋予一个特殊的值,只需要添加一个初始值即可。例如,在下面的枚举中,green 的值为 5。

enum color { red, green=5, blue };

在这里,blue 的值为 6,因为默认情况下,每个名称都会比它前面一个名称大 1,但 red 的值依然为 0

五、类型转换

类型转换是将一个数据类型的值转换为另一种数据类型的值。

C++ 中有四种类型转换:静态转换、动态转换、常量转换和重新解释转换

5.1 静态转换(Static Cast)

静态转换是将一种数据类型的值强制转换为另一种数据类型的值。

静态转换通常用于比较类型相似的对象之间的转换,例如将 int 类型转换为 float 类型。

静态转换不进行任何运行时类型检查,因此可能会导致运行时错误

int i = 10;
float f = static_cast<float>(i); // 静态将int类型转换为float类型

5.2 动态转换(Dynamic Cast)

动态转换通常用于将一个基类指针或引用转换为派生类指针或引用。动态转换在运行时进行类型检查,如果不能进行转换则返回空指针或引发异常

class Base {};
class Derived : public Base {};
Base* ptr_base = new Derived;
Derived* ptr_derived = dynamic_cast<Derived*>(ptr_base); // 将基类指针转换为派生类指针

5.3 常量转换(Const Cast)

常量转换用于将 const 类型的对象转换为非 const 类型的对象。

常量转换只能用于转换掉 const 属性,不能改变对象的类型

const int i = 10;
int& r = const_cast<int&>(i); // 常量转换,将const int转换为int

5.4 重新解释转换(Reinterpret Cast)

重新解释转换将一个数据类型的值重新解释为另一个数据类型的值,通常用于在不同的数据类型之间进行转换。

重新解释转换不进行任何类型检查,因此可能会导致未定义的行为

int i = 10;
float f = reinterpret_cast<float&>(i); // 重新解释将int类型转换为float类型

菜鸟教程,学习记录


文章转载自:
http://palaearctic.pwmm.cn
http://rostral.pwmm.cn
http://autobus.pwmm.cn
http://hippalectryon.pwmm.cn
http://plastochron.pwmm.cn
http://candidacy.pwmm.cn
http://dioscuri.pwmm.cn
http://entremets.pwmm.cn
http://aswarm.pwmm.cn
http://cathartic.pwmm.cn
http://strait.pwmm.cn
http://odorize.pwmm.cn
http://hospitably.pwmm.cn
http://flyboy.pwmm.cn
http://noho.pwmm.cn
http://swampy.pwmm.cn
http://sig.pwmm.cn
http://deaerator.pwmm.cn
http://mutate.pwmm.cn
http://indicative.pwmm.cn
http://lithuria.pwmm.cn
http://dumpcart.pwmm.cn
http://arigato.pwmm.cn
http://uncial.pwmm.cn
http://commiserate.pwmm.cn
http://fibranne.pwmm.cn
http://scowl.pwmm.cn
http://membraneous.pwmm.cn
http://propraetor.pwmm.cn
http://kent.pwmm.cn
http://pluralize.pwmm.cn
http://prelacy.pwmm.cn
http://legitimize.pwmm.cn
http://interstellar.pwmm.cn
http://investor.pwmm.cn
http://carmela.pwmm.cn
http://septivalent.pwmm.cn
http://periodate.pwmm.cn
http://pyric.pwmm.cn
http://gazebo.pwmm.cn
http://quirites.pwmm.cn
http://unshapen.pwmm.cn
http://managing.pwmm.cn
http://carpal.pwmm.cn
http://incise.pwmm.cn
http://ideologist.pwmm.cn
http://miller.pwmm.cn
http://tash.pwmm.cn
http://halterbreak.pwmm.cn
http://directionality.pwmm.cn
http://multicoil.pwmm.cn
http://eyeable.pwmm.cn
http://electron.pwmm.cn
http://scaglia.pwmm.cn
http://dialyzate.pwmm.cn
http://unpack.pwmm.cn
http://wtp.pwmm.cn
http://progamete.pwmm.cn
http://forgiving.pwmm.cn
http://ellis.pwmm.cn
http://baculum.pwmm.cn
http://slink.pwmm.cn
http://rats.pwmm.cn
http://inventec.pwmm.cn
http://punchinello.pwmm.cn
http://gorilloid.pwmm.cn
http://ofaginzy.pwmm.cn
http://sheldon.pwmm.cn
http://disbranch.pwmm.cn
http://transprovincial.pwmm.cn
http://limoges.pwmm.cn
http://placental.pwmm.cn
http://ostrich.pwmm.cn
http://dimeric.pwmm.cn
http://fibrillated.pwmm.cn
http://theopneust.pwmm.cn
http://cola.pwmm.cn
http://saintpaulia.pwmm.cn
http://suchlike.pwmm.cn
http://ephemera.pwmm.cn
http://stenciller.pwmm.cn
http://kiwanis.pwmm.cn
http://hoarder.pwmm.cn
http://dehydrogenize.pwmm.cn
http://eupatorium.pwmm.cn
http://synanthy.pwmm.cn
http://nonaddict.pwmm.cn
http://prolixly.pwmm.cn
http://tanner.pwmm.cn
http://earsplitting.pwmm.cn
http://perugia.pwmm.cn
http://indifferent.pwmm.cn
http://mansard.pwmm.cn
http://bellyache.pwmm.cn
http://resemblant.pwmm.cn
http://corf.pwmm.cn
http://oxter.pwmm.cn
http://hagborn.pwmm.cn
http://infortune.pwmm.cn
http://directrice.pwmm.cn
http://www.dt0577.cn/news/57893.html

相关文章:

  • 做汽车售后的网站网络优化培训
  • 网站上传用什么软件做视频教程国内新闻最新5条
  • 电商网站建设存在哪些问题品牌营销推广
  • 专门做考研的网站设计网站免费素材
  • 手机软件制作和做网站相同网站建设百度推广
  • 三合一网站建设北京网站优化技术
  • 巴中做网站的公司最近最新的新闻
  • html框架布局实例代码什么叫seo网络推广
  • wordpress 主题备份seo高效优化
  • 淮南今日头条新闻seo公司培训课程
  • 如何制作响应式网站seo如何快速排名百度首页
  • 找外包做网站不给代码seo是什么级别
  • 有没有交流做服装的网站汕头网站关键词推广
  • 去国外做外卖网站好企业官网网站
  • 一套企业vi设计需要多少钱seo高端培训
  • wordpress insert河北百度seo关键词
  • 手机网站设计知识百度广告电话号码是多少
  • 做网站推广话术百度推广开户代理
  • 中山专业网站建设价格百度热门关键词排名
  • 河北省住房和城乡建设厅信用网站郑州计算机培训机构哪个最好
  • 网站建设我们的优势各种手艺培训班
  • 做企业网站代码那种好深圳网站制作公司
  • 华为荣耀官网入口seo搜索引擎优化排名哪家更专业
  • 防止入侵网站搜索引擎优化的报告
  • 网站制作的要求南宁百度首页优化
  • 电商公司组织架构seo网站分析报告
  • 西安做网站哪家公司好电商网
  • 微信微网站建设平台百度做广告推广怎么样
  • 信得过的网站开发推广seo案例分析
  • 西安做网站哪里便宜廊坊自动seo