C从字符串的一部分中获取数值
C get numeric value from part of string
我的任务是从 char[]
的一部分中获取 long
数值,其中我有其开始和结束的索引。我只是在学习 C,所以我很困惑哪个函数在我的情况下效果最好..
让我说我正在制作函数 getNum()
:
static char words[100000]; //lets say this is string filled with many num. values and other stuff.
long getNum(int begin, int end){
return (long){part of string starting at words[begin] and ending at words[end]}
}
我想知道最好的方法和最简单的方法。也非常感谢任何其他评论。
我们给算法,你写代码。同意吗?
好的,所以逻辑应该是
我意识到我不需要数值结尾的索引。
到目前为止,以下解决方案似乎是最简单的:
static char words[100000]; //lets say this is string filled with many num. values and other stuff.
static char *endp;
long getNum(int begin){
return strtol(&words[begin], &endp, 10);
}
上述 Sourav Ghosh 的解决方案包括使用结束索引
我的任务是从 char[]
的一部分中获取 long
数值,其中我有其开始和结束的索引。我只是在学习 C,所以我很困惑哪个函数在我的情况下效果最好..
让我说我正在制作函数 getNum()
:
static char words[100000]; //lets say this is string filled with many num. values and other stuff.
long getNum(int begin, int end){
return (long){part of string starting at words[begin] and ending at words[end]}
}
我想知道最好的方法和最简单的方法。也非常感谢任何其他评论。
我们给算法,你写代码。同意吗?
好的,所以逻辑应该是
我意识到我不需要数值结尾的索引。
到目前为止,以下解决方案似乎是最简单的:
static char words[100000]; //lets say this is string filled with many num. values and other stuff.
static char *endp;
long getNum(int begin){
return strtol(&words[begin], &endp, 10);
}
上述 Sourav Ghosh 的解决方案包括使用结束索引