c++字符串转int_python中lower的用法

c++字符串转int_python中lower的用法在做ACM题时,经常都会遇到一些比较大的整数。而常用的内置整数类型常常显得太小了:其中long和int范围是[-2^31,2^31),即-2147483648~2147483647。而unsigned范围是[0,2^32),即0~4294967295。也就是说,常规的32位整数只能够处理40亿以下的数。那遇到比40亿要大的数怎么办呢?这时就要用到C++的64位扩展了。不同的编

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

在做ACM题时,经常都会遇到一些比较大的整数。而常用的内置整数类型常常显得太小了:其中long 和 int 范围是[-2^31,2^31),即-2147483648~2147483647。而unsigned范围是[0,2^32),即0~4294967295。也就是说,常规的32位整数只能够处理40亿以下的数。

那遇到比40亿要大的数怎么办呢?这时就要用到C++的64位扩展了。不同的编译器对64位整数的扩展有所不同。基于ACM的需要,下面仅介绍VC6.0与g++编译器的扩展。
VC6.0的64位整数分别叫做__int64与unsigned __int64,其范围分别是[-2^63, 2^63)与[0,2^64),即-9223372036854775808~9223372036854775807与0~18446744073709551615(约1800亿亿)。对64位整数的运算与32位整数基本相同,都支持四则运算与位运算等。当进行64位与32位的混合运算时,32位整数会被隐式转换成64位整数。但是,VC的输入输出与__int64的兼容就不是很好了,如果你写下这样一段代码:

__int64 a;
2 cin >> a;
3 cout << a;

Jetbrains全家桶1年46,售后保障稳定

那么,在第2行会收到“error C2679: binary ‘>>’ : no operator defined which takes a right-hand operand of type ‘__int64’ (or there is no acceptable conversion)”的错误;在第3行会收到“error C2593: ‘operator <<‘ is ambiguous”的错误。那是不是就不能进行输入输出呢?当然不是,你可以使用C的写法:

c++字符串转int_python中lower的用法

scanf("%I64d",&a);
printf("%I64d",a);

 

就可以正确输入输出了。当使用unsigned __int64时,把”I64d”改为”I64u”就可以了。
OJ通常使用g++编译器。其64位扩展方式与VC有所不同,它们分别叫做long long 与 unsigned long long。处理规模与除输入输出外的使用方法同上。对于输入输出,它的扩展比VC好。既可以使用

long long a;
cin>>a;
cout<<a;

也可以使用

scanf("%lld",&a);
printf("%lld",a);

使用无符号数时,将”%lld”改成”%llu”即可。
最后再说明两点点:

  1、作为一个特例,如果你使用的是Dev-C++的g++编译器,它使用的是”%I64d”而非”%lld”。

  2、注意:__int64是两个短的下划线

转载自:http://www.cnblogs.com/wainiwann/archive/2012/04/23/2467203.html 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/200631.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VS2008安装失败_vs2015安装时发生严重错误

    VS2008安装失败_vs2015安装时发生严重错误因为前两天XML的作业时用VS2008做的,公司的电脑上没装,打算装一个,以前安装过N次VS2008,昨天在公司的电脑上安装提示如下错误:    当时以为是安装的同时打开了很多其他的应用程序导致的这个问题。今天在关闭其他程序的情况下重新安装,还是出错。    在百度上搜说是与office2007冲突,解决办法是卸载office2007再安装,但是我以前都是在安装

    2022年9月6日
  • Web安全 支付逻辑漏洞(不用钱 买任何东西.(也能让商家倒贴钱给我们.))

    Web安全 支付逻辑漏洞(不用钱 买任何东西.(也能让商家倒贴钱给我们.))?我们购买东西正常情况下都是要钱的,如果说平台出现了(支付逻辑漏洞.)那么我们就可以,利用这个漏洞实现不用钱买任何东西,???或者是商家倒贴钱给我们来购买他的东西.(这不学起来吗?)

    2022年6月2日
  • Stm32的GPIO驱动继电器[通俗易懂]

    Stm32的GPIO驱动继电器[通俗易懂]三极管三极管S8050-D:直插的字体面向自己从左到右依次是发射极E,基极B,集电极C类型:NPN集电极耗散功率Pc:0.625W(贴片:0.3W)集电极电流Ic:0.5A集电极-基极电压Vcbo:40V集电极-发射极电压Vceo:25V集电极-发射极饱和电压Vce(sat):0.6V特征频率f:最小150MHz按三极管后缀号分为BCD档贴片为LH档放大倍数:B85-160C120-200D160-300L100-200H200-350上图中,左边的GPIO

    2022年6月24日
  • js android 换行符,关于js对textarea换行符的处理方法浅析

    js android 换行符,关于js对textarea换行符的处理方法浅析前言本文很简单,就是记录一下js对textarea换行符的处理。调试随便写一个textarea整个调试如下图:发现:textareaid里面的换行符可以通过indexOf获取textareaid.value.indexOf(“\n”)但是直接通过正则全局替换没有效果(如上图)textareaid.value.replace(‘/\n/g’,’;’)但是单个替换可以替换到:textareaid.v…

    2022年5月24日
  • 编码器的工作原理_编码器的应用

    编码器的工作原理_编码器的应用最近公司项目用到了编码器选用的编码器为360脉冲为了方便其一圈发360个脉冲,当然精度只有一度,如果为了高精度可以选用其他类型的首先简述一下编码器的工作原理编码器可按以下方式来分类。1、按码盘的刻孔方式不同分类(1)增量型:就是每转过单位的角度就发出一个脉冲信号(也有发正余弦信号,编码器(图1)然后对其进行细分,斩波出频率更高的脉冲),通常为A相、B相、Z…

    2022年10月1日
  • Java编程的逻辑 (4) – 整数的二进制表示与位运算

    Java编程的逻辑 (4) – 整数的二进制表示与位运算

    2021年9月14日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号