首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >解析有符号整数

解析有符号整数
EN

Stack Overflow用户
提问于 2014-01-28 10:52:33
回答 1查看 1.6K关注 0票数 0

我想知道是否有更好的方法使用斯巴什解析器框架来解析带符号整数。

没有符号Parse.Number.Select(int.Parse)的整数有着众所周知的解析器定义。

但是我也想解析带有-前缀的整数。

我现在得到的是Parse.Regex(@"\-?\d+").Select(int.Parse)

在不使用正则表达式的情况下,是否有更好的方法来做到这一点?

例如,使用Parse.Char('-').Optional(),然后解析以下数字。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-18 11:59:46

我这样做的方式类似于以下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from op in Parse.Optional(Parse.Char('-').Token())
from num in Parse.Decimal
from trailingSpaces in Parse.Char(' ').Many()
select decimal.Parse(num) * (op.IsDefined ? -1 : 1);

当然,根据解析内容的上下文,省略trailingSpaces部分。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21414309

复制
相关文章
基础野:细说有符号整数
Breif                                本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下。  本篇我们一起来探讨一下基础——有符号整数的表示方式和加减乘除运算。 Encode                                 有符号整数可表示正整数、0和负整数值。其二进制编码方式包含 符号位 和 真值域。   我们以8bit的存储空间为例,最左1bit为符号
^_^肥仔John
2018/01/18
1.9K0
基础野:细说无符号整数
Brief                                 本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下。   本篇我们一起来探讨一下基础的基础——无符号整数的表示方式和加减乘除运算。 Encode                                 无符号整数只能表示大于或等于零的整数值。其二进制编码方式十分直观,仅包含真值域。   我们以8bit的存储空间为例,真值域则
^_^肥仔John
2018/01/18
1.3K0
基础野:细说无符号整数[通俗易懂]
本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下。
全栈程序员站长
2022/09/20
1.4K0
无符号数和有符号数
人有十个手指头,习惯了逢十进一,于是十进制成了生活中的标准。程序的世界只有高低电平两种状态,更适合用二进制来表示,于是二进制成了程序世界的标准。 对与无符号数来说,我们更喜欢谈他们之间的转化,十进制是我们最习惯的进制,于是十进制转为R进制,R进制转为十进制变尤为重要。
naget
2019/07/03
3.1K0
无符号数和有符号数
如何检测无符号整数乘法溢出
我在写一个程序计算 a ^ b = c 其中 a、b、c 都是无符号整数。为了检测乘法溢出,我写了下面的检测程序,
ClearSeve
2022/02/10
1.3K0
无法解析外部符号
本人在写qt工程的时候遇到无法解析外部符号 原因:只写了类声明,但还没有写实现类,造成调用时无法解析。 解决方法,把还没有实现类的声明给注释掉。
全栈程序员站长
2022/09/07
2.7K0
无法解析外部符号
整数的存储:无符号表示法
整数在计算机里是以什么样的形式存储的呢?我们已经知道,计算机的数据是以位模式的形式存储的。也就是说,计算机存储的是二进制的内容。整数在计算机中有很多种存储方法,主要有下面三种:无符号表示法、符号加绝对值表示法和二进制补码表示法。这篇文章主要讨论无符号表示法。 无符号表示法仅仅是整数存储方法中的一种,接下来还会介绍符号加绝对值表示法和二进制补码表示法,敬请期待。
mwangblog
2018/07/04
1.1K0
FPGA设计中 有符号数、无符号数
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。
FPGA技术江湖
2020/12/29
1.7K0
FPGA设计中 有符号数、无符号数
符号解析与重定位
在完成空间与地址的分配步骤之后,链接器就进入了符号解析与重定位的步骤,这也就是静态链接的核心作用; 在分析符号解析和重定位之前,首先让我们来看看“a.o”里面是怎么使用这两个外部符号,也就是说我们在“a.c”源程序里面使用了“shared”变量和“swap”函数,那么编译器在将“a.c”编译成指令时,它如何访问“shared”变量?如何调用“swap”函数? 使用objdump的-d参数可以看到“a.o”的代码反汇编结果: objdump -d a.o
233333
2022/05/10
1.3K0
符号解析与重定位
移位运算(无符号移位运算,有符号移位运算)
可以移位运算的类型有:iuint,int,lang等类型.我们本次使用int类型 一个int类型占4个字节,共32位,带符号位,所以最高位位符号位(使用0,1表示符号位)
全栈程序员站长
2022/09/14
1.4K0
PWN 无符号和有符号整型的绕过漏洞
C语言中,无符号整型数是不带正负表示符号的整型数。C语言在计算机里编译时数都是用二进制表示的,如果最左边这一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整型数。
yulate
2023/05/02
9720
PWN 无符号和有符号整型的绕过漏洞
整数的存储:符号加绝对值表示法
在整数的存储:无符号表示法中谈到过,整数在计算机中有很多种存储方法,主要有下面三种:无符号表示法、符号加绝对值表示法和二进制补码表示法。这里我们讨论第二种方法:符号加绝对值表示法。 符号加绝对值表示法使用第一位(最高位)来表示符号:0表示正数、1表示复数,剩余的位表示这个数的绝对值,比如十进制7的绝对值是二进制111,如果用4位长的数据来表示7,那么+7为0111,-7为1111.这样4位长的数据可以表示16个数,正负各占一半,正的是+0~+7,负的是-7~-0.注意:符号加绝对值表示法中有两个0,+0和-
mwangblog
2018/07/04
1.4K0
链接时无法解析符号checklist
主要原因包括四类:函数声明与实现的原型不一致、函数声明与实现的作用域不同、函数声明但没有实现、使用DLL接口不当。
gaigai
2019/08/30
2.5K0
无符号整型和有符号整型的区别,以及无符号整型的使用
size_t 等价于unsigned int 接收sizeof的返回值要用%u
大忽悠爱学习
2021/03/04
4.4K0
iOS 堆栈符号解析最佳实践
本文介绍了如何解析iOS的崩溃堆栈,分别使用了symbolicatecrash来自动解析整个堆栈,以及使用atos来解析单个地址的符号。还介绍了如何确认符号表是否正确,以及找不到符号时如何解决。
QQ空间开发团队
2017/08/16
4.1K2
FPGA 中的有符号数乘法
FPGA中乘法器是很稀缺的资源,但也是我们做算法必不可少的资源。7系列及之前的FPGA都是25x18的DSP,UltraScale中是27x18,我们可以通过调IP Core的方式或者原语的方式来进行乘法操作。在里面可以设置有符号还是无符号数乘法。
猫叔Rex
2020/06/29
2K0
python中取整数的方法(python中取整符号)
Python中的 round() 有两个参数,第一个参数是需要处理的数,第二个参数是数位精度,默认为0。round(3.4)
全栈程序员站长
2022/07/28
4.7K0
C++解析一些特殊符号tab、换行符号
我们经常会遇到一些Linux内核信息需要,比如一个wifi数据,中间是用tab键盘隔开的,然后每一行用换行符进行区分,如下所示的数据
良知犹存
2021/05/12
9910
C++解析一些特殊符号tab、换行符号
Redis源码解析——有序整数集
        有序整数集是Redis源码中一个以大尾(big endian)形式存储,由小到大排列且无重复的整型集合。它存储的类型包括16位、32位和64位的整型数。在介绍这个库的实现前,我们还需要先熟悉下大小尾内存存储机制。(转载请指明出于breaksoftware的csdn博客)
方亮
2019/01/16
4890
无法解析的外部符号问题小结
问题1:在编写通信相关程序中,引用了一个静态库(该静态库编译没有问题,并被其他项目引用),该库是对SOCKET的一个封装。基本结构如下:
全栈程序员站长
2022/09/13
3.1K0
无法解析的外部符号问题小结

相似问题

有符号整数和无符号整数?

32

有符号整数和无符号整数

40

无符号整数和有符号整数

10

有符号整数与无符号整数

15173

有符号整数和无符号整数

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文