c语言提取字符串中的数值转换为10进制值

#include <stdio.h>
#include "string.h"
#include "stdlib.h"

char str1[] = "##Temp:26;";

int main() {
    char * token;
    unsigned long val=0;
    token  = strtok(str1, ":");
    printf(token);
    printf("\n");
    token  = strtok(NULL, ";");
    printf(token);
    printf("\n");
    val = strtol(token, NULL, 10);  // 这里的值为代表转为10进制
    printf("%ld", val);
    return 0;

}

打印结果:

##Temp 26 26

第三行便是我们需要的结果。

猜你喜欢

转载自blog.csdn.net/daoshengtianxia/article/details/79633589