c++中,long long是什么类型?

 我来答
billy918
2011-08-21 · 超过16用户采纳过TA的回答
知道答主
回答量:30
采纳率:0%
帮助的人:43.1万
展开全部
long long不是所有编译器都使用的,说白了它就是一种能够表示范围更大的整数的类型
一般来说,整数常量是被当作 int 类型来存储的。如果我们使用的整数常量超出了 int 的表示范围,C 语言规定编译器自动使用 unsigned int 来处理这个常量。如果 unsigned 也不足以表示这个常量的话,编译器就会用 long。如果还表示不了的话,那就依次用 unsigned long,long long,unsigned long long。如果 unsigned long long 也表示不了,那么编译器就没辙了。注意:long long 和 unsigned long long 是 C99 特有的。
湾花容空
2015-06-28 · TA获得超过5047个赞
知道小有建树答主
回答量:683
采纳率:85%
帮助的人:114万
展开全部
long long本质上还是整型,只不过是一种超长的整型。

int型:32位整型,取值范围为-2^31 ~ (2^31 - 1) .
long:在32位系统是32位整型,取值范围为-2^31 ~ (2^31 - 1);在64位系统是64位整型,取值范围为-2^63 ~ (2^63 - 1)
long long:是64位的整型,取值范围为-2^63 ~ (2^63 - 1)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ld_zhidao
2011-08-23 · TA获得超过353个赞
知道答主
回答量:128
采纳率:0%
帮助的人:153万
展开全部
转自百度百科:  
由string类类型和vector类类型定义的类型,用以保存任意string对象或vector对象的长度,标准库类型将size_type定义为unsigned类型
  string抽象意义是字符串, size()的抽象意义是字符串的尺寸, string::size_type抽象意义是尺寸单位类型
  string::size_type它在不同的机器上,长度是可以不同的,并非固定的长度。但只要你使用了这个类型,就使得你的程序适合这个机器。与实际机器匹配。
  eg
  string::size_type从本质上来说,是一个整型数。关键是由于机器的环境,它的长度有可能不同。 例如:我们在使用 string::find的函数的时候,它返回的类型就是 string::size_type类型。而当find找不到所要找的字符的时候,它返回的是 npos的值,这个值是与size_type相关的。假如,你是用 string s; int rc = s.find(.....); 然后判断,if ( rc == string::npos ) 这样在不同的机器平台上表现就不一样了。如果,你的平台的string::size_type的长度正好和int相匹配,那么这个判断会侥幸正确。但换成另外的平台,有可能 string::size_type的类型是64位长度的,那么判断就完全不正确了。 所以,正确的应该是: string::size_type rc = s.find(.....); 这个时候使用 if ( rc == string::npos )就会正确了。
  st.size()表示st中的字符数量,字符数量的统计是由 1 开始累计计算的,所以字符数量正好比字符串的下标索引数(由 0 开始累计计算)大 1 ,这里的index != st.size();的效果等同于index < st.size();
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
beddy1
2011-08-21 · TA获得超过1989个赞
知道大有可为答主
回答量:2271
采纳率:0%
帮助的人:2209万
展开全部
长长整型,其位长度大于等于long型。
在Win32平台和Win64平台中,其长度都是8Byte,相当于_int64。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式