c++中isdigit()和atoi()函数

先说isdigit函数的用法,sidigit函数就是判断一个字符是不是十进制数字,头文件是cctype

函数的返回值为非零(真)表示c是十进制数字,返回值为零(假)表示c不是十进制数字

#include <iostream>
#include <cstdio>
 
using namespace std;
 
int main() {
    char c;//此时输入的是整型数字
    while (cin>>c) {
        if (isdigit(c)) {
            cout<<c<<"是数字"<<endl;
        } else cout<<c<<"不是数字"<<endl;
    }
    return 0;
}

  atoi()函数就是将把字符串转换成整型数

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

int main()
{
   int val;
   char str[20];
   
   strcpy(str, "98993489");
   val = atoi(str);
   printf("字符串值 = %s, 整型值 = %d
", str, val);

   strcpy(str, "runoob.com");
   val = atoi(str);
   printf("字符串值 = %s, 整型值 = %d
", str, val);

   return(0);
}

让我们编译并运行上面的程序,这将产生以下结果:

字符串值 = 98993489, 整型值 = 98993489
字符串值 = runoob.com, 整型值 = 0