问题标签 [strtol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
2846 浏览

c++ - 从字符串中提取数字/数字范围的复杂算法

我正在研究一种算法,我正在尝试以下输出:

给定值/输入:

char *Var = "1-5,10,12,15-16,25-35,67,69,99-105"; int size = 29;

这里的“1-5”表示一个范围值,即它会被理解为“1,2,3,4,5”,而只有“,”的值是单独的值。

我正在编写一个算法,其中最终输出应该是这样的,它将给出完整的输出范围:

如果有人熟悉这个问题,那么非常感谢您的帮助。提前致谢!

我最初的代码方法是:

但它只有在我有“0-5”或“0,10,15”时才有效。我期待着让它更加通用。

0 投票
1 回答
663 浏览

c - strtol c 字符串函数

我正在通过重定向使用输入。我正在尝试将数字从字符串存储到整数。

第一个数字是 1989 年......但是只有“1”被存储。我使用 strtol 错了吗?

table 是一个结构数组

value 是一个整数数组。

此代码有效,并且在 1989 年读取后确实进入 else if ......但由于某种原因,strtol 仅存储“1”而不是存储“1989”。

0 投票
1 回答
7427 浏览

c++ - C:使用 strtol endptr 永远不会为 NULL,不能检查值是否仅为整数?

所以这就是问题所在。我有一组数据应该是:

int int int int ....

但是,我希望如果我有 1asdas 2 ,我希望能够捕捉到“asdas”部分。但是,此时,如果我只有 1 2,则 endptr 不为 NULL,因此我无法检查该值是只有数字还是数字和字母。这是我的代码:

谢谢!

0 投票
3 回答
7895 浏览

c - 使用 strtol 验证 ANSI C 中的整数输入

我是编程和一般 C 的新手,目前正在大学学习它。这是一个作业,所以我想避免直接回答,但更多的是在提示或提示/推动正确的方向之后。

我正在尝试使用 strtol 来验证我的键盘输入,更具体地说,测试输入是否为数字。我查看了此处和其他网站上的其他问题,并按照给其他用户的说明进行操作,但这对我没有帮助。

根据我对strtol (long int strtol (const char* str, char** endptr, int base);) 的阅读/理解,如果endptr不是空指针,则函数会将endptr的值设置为第一个字符号码后。

因此,如果我要输入 84948ldfk,endptr将指向“l”,告诉我输入中有数字以外的字符,这将使其无效。

但是在我的情况下,正在发生的事情是,无论我输入什么,我的程序都会返回一个无效输入。这是我的代码:

任何人都可以帮助我朝着正确的方向前进吗?显然错误与我的if(ptr != NULL)条件有关,但据我所知,这似乎是正确的。正如我所说,我已经查看了与此类似的先前问题并在答案中采纳了建议,但它似乎对我不起作用。因此,我认为最好根据自己的情况寻求我的帮助。

提前致谢!

0 投票
2 回答
699 浏览

c++ - 如何从 32 个字符的二进制字符串转换为十六进制?

我知道网上有很多关于如何从字符串转换为十六进制的教程。好吧,我有一个问题。

我的代码(见下文)最多可使用 31 个字符,我终其一生都无法弄清楚原因。每当有 32 个字符时,它最多只能达到 7fffffff。

我需要能够输入类似“111111111100000000001010101000”的内容

应该是一个简单的修复只是不确定在哪里

我的尝试(可编译):

0 投票
2 回答
141 浏览

c++ - 如何做一个真正的strtoul?不会吸收实际的字符串

将 ACTUAL 字符串输入到 strtuol 时出现问题。输入字符串应该是 32 位长的无符号二进制值。

显然,有问题,InputString = apple;但我不知道如何解决这个问题。有什么想法吗?这不应该那么困难。不知道为什么我会遇到这样的困难。

多谢你们。

0 投票
3 回答
2411 浏览

c++ - 从字符串转换后如何返回十六进制值

我试图在这个方法中返回一个十六进制值。不知道我哪里错了。不知道如何在不使用 cout 的情况下将值放入十六进制。一直没能找到解决办法。输入值总是 32 位长

它就像我想返回hex << x,但那不是一个选择。

0 投票
1 回答
645 浏览

c - 为什么 strtol 需要指向指针的指针而不是单个指针?

这是 C 标准库例程的原型strtol

典型用法:

为什么这样做?为什么不传递局部变量的地址?

例子:

用法:

我确信这个设计决定有一个合乎逻辑的原因,但我不太明白。

0 投票
1 回答
335 浏览

c++ - 使用strtoll从二进制字符串转换为int?

我必须从包含一堆二进制数的文本文件中读取,然后将它们转换为整数并将它们存储在数组中。我已经创建了一个函数来执行此操作,但是,该函数只返回一个数字。它似乎没有通过文件,或者它只是不起作用。谁能弄清楚为什么?

提前致谢!

0 投票
1 回答
187 浏览

c - strtoul 从字符串日期(“03/10/2013 14:01:00”)转换为 time_t

我不明白,为什么这不起作用?PS:我从一些谷歌找到了这段代码!

问题:我不知道为什么它应该工作?这是否也考虑时区?!