我正在尝试计算 C 中字符串的值。
我将字符串定义为:char cadena[100] = "Esto es un text securizado$2516"
我需要将 2516 转换为 int,我实际上正在尝试使用 atoi()
,但我不知道如何分隔字符串以使用该函数。
PS:请原谅我的英语,这不是我的母语,我希望你明白我想做什么。
最佳答案
一个简单的方法可以如下所示
int number = 0;
char cadena[100] = "Esto es un text securizado$2516";
size_t n = strcspn( cadena, "0123456789" );
if ( cadena[n] ) number = atoi( cadena + n );
或者如果数字已经初始化为 0 那么你可以直接写
number = atoi( cadena + n );
在这种情况下,零将是默认值。
关于c - C语言中如何计算字符串的数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33813776/