atoi相关内容
我想尝试使用 SIMD 指令编写 atoi 实现,以包含在 RapidJSON(C++ JSON读/写库).它目前在其他地方有一些 SSE2 和 SSE4.2 优化. 如果是速度增益,多个atoi结果可以并行完成.字符串最初来自 JSON 数据缓冲区,因此多 atoi 函数必须执行任何所需的 swizzling. 我想出的算法如下: 我可以用以下方式初始化一个长度为 N 的向量:
..
我希望将一个整数作为命令行参数,但是如果用户传递一个非整数字符串,这将导致堆栈溢出.确保 atoi() 成功的标准方法是什么? 解决方案 您可以使用: long int strtol(const char *nptr, char **endptr, int base); 然后检查是否*endptr != nptr.这意味着字符串至少以整数开头.您还可以检查 *endptr 是否
..
好的,所以我对组装还很陌生,事实上,我对组装很陌生.我写了一段代码,它只是为了从用户那里获取数字输入,乘以 10,然后通过程序退出状态将结果表达给用户(通过在终端中键入 echo $?)问题是,它没有给出正确的数字,4x10 显示为 144.所以我想输入可能是一个字符,而不是一个整数.我的问题是,如何将输入的字符转换为整数,以便用于算术计算? 如果有人能回答我是初学者,那就太好了:)另外,如
..
我正在 DFA 上编写这个项目,我想将保存为字符串的整数的每个数字保存并转换为 int 数组.这是负责此操作的函数的代码: int l=final_states.size();int* temp_final;temp_final=new int [l];for(int i=0;i 这给了我以下错误:request for member 'c_str' in '((DFA*)this)->DFA
..
#include#includeint main(void){char string [10000],* token;int garden [100],i = 0;fgets(string,10000,stdin);令牌= strtok(string,“");while(strcmp(token,"\ n")!= 0){garden [i] = atoi
..
在C中使用 atoi 时,我试图将数字的 char 数组转换为 int .我的电话号码上有 0 的前导,以后打印出来时,这些号码不会保留. char num [] ="00905607";整数number = atoi(num);printf(“%d",数字); 此输出将为 905607 ,我希望其为 00905607 . 有什么想法吗? 解决方案 您可以在printf()上
..
我正在尝试将64位整数字符串转换为整数,但是我不知道要使用哪个字符串. 解决方案 使用 strtoull (如果有)或 _strtoui64() 与Visual Studio. unsigned long long strtoull(const char * restrict str,char ** restrict endptr,以int为基数);/*我确信MS有充分的理由不将其命名
..
我正在尝试找出在C中是否存在将字符串转换为整数的另一种方法. 我会定期在代码中设置以下内容. char s [] ="45";int num = atoi(s); 那么,有没有更好的方法或另一种方法? 解决方案 有 strtol ,这是更好的IMO.我也很喜欢 strtonum ,因此请使用它(但请记住它不是便携式的): long longstrtonum(const c
..
我正在尝试创建自己的atoi函数.通过以下操作,我得到的返回值为0.无论我在函数中更改数字变量如何,都将获得返回值.关于修改代码有什么建议吗? //my atoi function int atoi_me(char *numstring) { int number = 0; while((*numstring >= '0') && (*numstring
..
是否存在将 std :: string_view 转换为 int 的安全标准方法? 由于C ++ 11 std :: string 我们使用 stoi 转换为 int : std :: string str =“ 12345”; int i1 = stoi(str); //有效,i1 = 12345 int i2 = stoi(str.substr(1,2)); //工作,让
..
atoi 和 stoi 有什么区别? 我知道, std :: string my_string =“ 123456789”; 为了将该字符串转换为整数,您必须执行以下操作: const char * my_c_string = my_string.c_str(); int my_integer = atoi(my_c_string);
..
我有一个二进制字符串,然后使用atoi()转换为整数.当我这样做时,似乎会自动将二进制转换为十进制.问题在于所得的整数为负,并且与任何在线二进制到十进制转换器不一致. atoi()是否有问题?我应该改用其他功能吗? 代码: string myString = "01000101"; int x = atoi(myString.c_str()); cout
..
我正在阅读《 The C Programming Language》一书中学习C的内容,偶然发现了算术s[i] - '0',他们说算术s[i] - '0'给出了s [i]中存储的字符的数值.我不太了解,如何通过减法给出价值? 注意这在atoi函数中使用,该函数将一串数字转换为等效的数字. 谢谢 解决方案 基本上,您需要了解的是,在现代计算机上,所有信息都以数字形式存储为字节序列.由每个程序
..
创建多线程程序时遇到错误.使用gdb进行调试时,atoi函数会引发错误.请帮助,atoi多线程是否不安全?如果是,那有什么替代方法? 解决方案 很容易实现对 atoi() : int strToInt(const char *text) { int n = 0, sign = 1; switch (*text) { case '-': sign = -1; c
..
查看此main: int main(void) { int i; int ch; char str[512]; fgets(str, sizeof str, stdin); for (i = 0; i
..
标准C库函数atoi在ISO 9899:2011中记录为: 7.22.1数值转换函数 1 函数atof,atoi,atol和atoll不需要在发生错误时影响整数表达式errno的值.如果无法表示结果的值,则行为是不确定的. ... 7.22.1.2 atoi,atol和atoll函数 简介 #include int atoi(const c
..
是否有类似于atoi的函数将字符串转换为float而不是整数? 解决方案 atof() (或 std :: atof() 说C ++ - 感谢 jons34yp )
..
我试图将 std :: vector 中存储的 std :: string 转换为整数并将其作为参数传递给函数。 这是我的代码的简化版本: ; string>记录; functiontest(atoi(record [i] .c_str)); 我的错误如下: 错误:类型为'const char *的参数(std :: basic_string
..
我想尝试使用SIMD说明书写一个atoi实现,以包含在 RapidJSON (一个C ++ JSON读/写库)。目前在其他地方有一些SSE2和SSE4.2优化。 如果是速度增益,多个 atoi 结果可以并行完成。字符串最初来自JSON数据的缓冲区,因此多atoi函数将必须执行任何所需的swizzling。 我想出的算法是以下: 我可以用以下方式初始化长度为N的向量: [10 ^
..
给定一个应该代表一个数字的字符串,我想把它放到一个转换函数中,如果整个字符串没有转换,它会提供通知。 输入:“12”: code> istringstream :: operator>> 输出12 li> stoi 输出12 “1X”我想要一个失败响应,但我得到: code> istringstream :: operator>> 输出1 li> stoi 输出1
..