如何在c++区分字母和数字

来源:百度知道 编辑:UC知道 时间:2024/07/04 15:50:28
比如:
在执行兰里输入*.exe abc 123
如何显示argv[1]是字母argv[2]是数字

如果输入1.2.3 abc123 123abc呢?怎么区分这些
最好能给出编码
谢谢了

对于一个字符型(char)变量,可以根据ascii码值的范围来判断是否为字母或数字。
其原理为,在ascii码中,大写字母,小写字母和数字,分别都是连续的。
所以对于char c, 如果满足 c>= '0' && c <= '9' 那么就是数字。大小写字母类似。
如果经常使用这样的判断,可以封装为宏定义。
判断数字:
#define SHUZI(c) (c>= '0' && c <= '9' )
#define DAXIE(c) (c>= 'A' && c <= 'Z' )
#define XIAOXIE(c) (c>= 'a' && c <= 'z' )
如果不关心大小写,只是判断字母可以写作:
#define ZIMU(c) (DAXIE(c) || XIAOXIE(c))
其含义为,如果c是大写字母或者是小写字母,那么c就是字母。

你好,由于不大清楚你的诉求,我就帮你写了一个简单的加法计算工具
希望能对你有一些帮助 //再次修正版
#include<iostream>
#include<cstdlib>
#include<cstring>
using namespace std;

int main(int argc,char *argv[])
{
int flag ,i;
double a,b;
char num[3][80]={"",""};

if(argc!=3){cout<<"int main(int argc,char *argv[]) 请输入两个参数,程序即将返回。\n";system("Pause");return 1;}

for(int s=1;s<=2