`

我自己写的一个string转换成int的函数

    博客分类:
  • C#
 
阅读更多
功能不强,比系统的略快。但胜在可以修改,都不进行安全判断,可以比系统的快上10倍。

//char的函数能改进
//for循环可以增加并行性
//负号的处理可以尝试改
public static int StringToInt(string s)
...{
    int i = 0;
    for (; i < s.Length; i++)
        if (char.IsWhiteSpace(s[i]) == false)
            break;
    char negative = s[i];   //负数
    if (negative == ''-'' || negative == ''+'') i++;
    long result = 0;    //改为int或者uint,快很多
    for (; i < s.Length; i++)
    ...{
        if (char.IsDigit(s[i]) == false)    //如果能省略,快很多
            throw new FormatException("Input string was not in a correct format.");
        result = 10 * result + (s[i] - ''0'');
        if (result > int.MaxValue)          //如果能省略,快很多
            throw new OverflowException("Value was either too large or too small for an Int32.");
    }
    return (int)(negative == ''-'' ? -result : result);
}  




分享到:
评论

相关推荐

    string转化成int,double,bool

    以上就是关于“string转化成int, double, bool”的详细解释。通过理解这些基本的类型转换,你可以在编程时更有效地处理各种数据类型。在遇到数据溢出问题时,记得采取适当的预防措施,以确保程序的稳定运行。

    各种string类型转换

    通过`Insert`方法可以在原字符串的指定位置插入另一个字符串。 #### 访问单个字符 ```cpp void __fastcall TForm1::Button1Click(TObject*Sender) { AnsiString Test = "ABCDEF"; AnsiString Npos = Test[3]; // ...

    C++里如何将int类型的16进制数转换成string类型[归类].pdf

    今天,我们将讨论如何将 int 类型的 16 进制数转换成 string 类型。 数字与字符串的关系 在计算机中,数字和字符串是两种不同的数据类型。数字可以是整数、浮点数等,而字符串则是一串字符的集合。在 C++ 中,数字...

    C#中将STRING转换成INT类型 (3).pdf

    如果从一个较大的类型如 `long` 转换为 `int`,必须使用这种显式转换,因为这涉及到数据的截断。对于浮点数,转换会丢弃小数部分,可能导致精度损失。此外,如果尝试将 `object` 类型转换为 `int`,且对象值不是整数...

    C++string类常用函数

    - 这种构造方式将 C 风格字符串 `s` 转换成 `string` 对象。例如: ```cpp string s1("Hello, World!"); ``` - **使用指定数量的相同字符初始化**:`string(int n, char c);` - 创建一个包含 `n` 个字符 `c` 的...

    lr中lr_save_string函数和itoa函数的使用

    lr_save_string 函数用于将一个值保存到一个变量中,而 itoa 函数用于将整数类型转换成字符串类型。 lr_save_string 函数的作用是将一个值保存到一个变量中,以便在录制的脚本中使用。该函数的原型为:int lr_save_...

    string类型的全部函数

    在C++标准库中,`string`实际上是`basic_string`模板类的一个特化版本,用于处理`char`类型的字符序列。它提供了丰富的功能集,不仅涵盖了基本的字符串操作如拼接、分割和搜索,还包含了序列容器的通用操作,如元素...

    C++中将string类型转化为int类型

    写程序需要将string转化为int,所以就探索了一下。 方法一:atoi函数 atoi函数将字符串转化为整数,注意需要stdlib库。...显然,atoi需要的事const char*类型,而我上面给的上string类型,所以就要 多加一个函

    string的常用函数

    此外,`std::string` 还有一个析构函数 `s.~string();` 用于释放字符串占用的内存。 #### 三、字符串操作函数 `std::string` 提供了许多实用的操作函数,包括但不限于: 1. **赋值函数**: - `s = "new value";`...

    C#调用C++的dll实例,回调函数,string和int数组参数传递

    对于回调函数,我们需要声明一个C风格的函数指针类型,并在DLL中提供一个接受该类型参数的函数。 1. **回调函数的定义**:在C++ DLL中,定义一个接受C#回调函数的函数,例如: ```cpp typedef void (*CallbackFunc)...

    Python将list中的string批量转化成int/float的方法

    最近在处理词向量这块,因为平时习惯把处理的词向量保存成文件,但是txt...以上这篇Python将list中的string批量转化成int/float的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开

    string、wstring、cstring、 char、 tchar、int、dword转换方法

    与上面的过程相反,首先将宽字符串转换为BSTR类型,再将BSTR转换为`char*`类型,最后创建一个`std::string`对象。 ### 2. `string`与`cstring`之间的转换 #### `string`到`cstring` 示例中提供了两种方式: - 直接...

    CString,int,string,char之间的转换(C/C++)

    反之,将string转换为int类型可以使用stoi函数,例如: ``` string s = "64"; int i = stoi(s); ``` 七、char*与string之间的转换 char*可以使用构造函数将string类型转换为char*,例如: ``` string s = "hello"; ...

    CString,int,string,char之间的转换

    ### CString、int、string、char之间的转换详解 在软件开发中,尤其是使用C++进行Windows应用程序开发时,数据类型之间的转换是常见的需求。本文将详细探讨`CString`、`int`、`string`、`char`及其数组之间的转换...

    string函数

    - 功能:`strcpy()`函数用于将一个字符串完全复制到另一个字符串中。 - 原型:`char *strcpy(char *dest, const char *src);` - 示例:`strcpy(string, str1)`会将`str1`的内容复制到`string`中。 2. **strncpy*...

    std::string format格式化函数源代码及两种格式化方法

    本项目提供的`std::string format`函数是作者自定义的一个实现,它提供了一种方便的方式来格式化`std::string`对象,使得代码更清晰易读。源代码主要分布在`str.hpp`和`string_format.cpp`这两个文件中。 在`str....

    StringToInt

    本篇文章介绍了一个简单的字符串转整数的方法,并通过一个具体的示例函数来阐述这一过程。 #### 核心概念:ASCII码与数字 在ASCII表中,每个字符都对应一个唯一的数值,即其ASCII码值。对于数字字符(例如'0'到'9'...

    C语言--写一个函数,判断一个整数是否为回文数,是返回1,不是返回0(如果一个整数,从左右来读都一样,就称它为回文数

    在C语言中,编写一个函数来判断一个整数是否为回文数是一项常见的编程练习,它可以帮助初学者更好地理解数字处理和字符串操作。回文数是一个可以正向和反向读取都相同的数字,比如12321、111、45654等。下面我们将...

    写自定义函数stringLower()实现将一个字符串中所有大写字母变为小写字母。在主函数中输入一含有大写字母的字符串,调用该函数并输出改变后的字符串。

    本例中的目标是编写一个名为`stringLower()`的函数,它接受一个包含大写字母的字符串,并将其所有大写字母转换为小写字母。这个功能在处理用户输入、数据清理或格式化输出时非常有用。下面我们将详细讨论如何实现这...

    c++实现的将ip地址转换成四个int型,便于处理

    这段代码首先定义了一个名为`ip_to_int`的函数,它接受一个包含IP地址的字符串,返回一个包含四个整数的向量。在主函数`main`中,我们调用这个函数并打印结果。 注意,上述代码未处理可能的异常,如非数字字符或...

Global site tag (gtag.js) - Google Analytics