巴西世界杯惨案

C语言如何判断一个字符串为数字

社区

C语言 帖子详情 C语言如何判断一个字符串为数字 daydayupdu 2006-09-10 12:38:25 在用atoi将一个字符串转换成整数之前,我想判断一下它能不能转换(是不是都是数字),因为如果它不是完全数字,转换后是0,而字符串"0"转换后也是0。

希望不是一个字符一个字符逐个判断。

...全文

1982 4 打赏 收藏 C语言如何判断一个字符串为数字 在用atoi将一个字符串转换成整数之前,我想判断一下它能不能转换(是不是都是数字),因为如果它不是完全数字,转换后是0,而字符串"0"转换后也是0。 希望不是一个字符一个字符逐个判断。 复制链接

扫一扫 分享 转发到动态 举报

写回复 配置赞助广告取 消

确 定

用AI写文章 4 条回复 切换为时间正序 请发表友善的回复… 发表回复 打赏红包 需支付: 0.00 元 取 消 确 定 daydayupdu 2006-09-10 打赏举报 回复 结贴

除了一个字符一个字符判断,看来是没有好办法了。

我的帖子内容里说最好不要逐个字符判断,所以最后两位的答复基本不符合要求,呵呵,不过没功劳有苦劳,谢谢。

如果谁还有更好的方法请跟贴,不过没分可送了了,不好意思。 winfang 2006-09-10 打赏举报 回复 对每个字符窜的每个字符判断ACSII码是否大于'0'或者小于'9' JFDream_15 2006-09-10 打赏举报 回复 自己写个函数判断一下:

BOOL IsDigit(CString str)

{

for (int i = 0; i < str.GetLength(); i++)

{

if (str.GetAt(i) > '9' || str.GetAt(i) < '0')

{

return FALSE;

}

}

return TRUE;

}

返回TRUE为数字串,否则不是. lj860603 2006-09-10 打赏举报 回复 因为如果它不是完全数字,转换后是0,而字符串"0"转换后也是0。

================

如果它不是完全数字,转换后不一定是0,atoi返回第一个非数字字符前面的数字。

恩暂时想不出有好办法不是一个字符一个字符逐个判断。头文件倒提供了判断字符是否为10进制数字的函数isdigit(c);

C语言 判断字符串是否为数字字符串 C语言 判断字符串是否为数字字符串 C语言 判断一个字符串是否全为数字 #include<stdio.h>

#include<string.h>

int main()

{

char a[]="1000023233d";

if(strspn(a, "0123456789")==strlen(a))

{

printf("quan wei shu zi\n");

}else{

prin... C语言判断字符串是否为全为数字 可以看出,只有字符串str1中的所有字符都是数字,所以返回结果为1,其余字符串中含有非数字字符,所以返回结果为0。 C语言判断字符串是否为数字 C语言判断一个字符串是否为数字, 听起来很简单,实现还是有点难度的。 C语言:判断输入字符串是否为数字 判断输入字符串是否为数字程序:

使用标准库:

使用函数:

strspn(char str1, char str2):返回 str1 中第一个不在字符串 str2 中出现的字符下标

strlen(char str):返回字符串的长度

代码示例:

#include

#include

char input_num[50]={0};

int main()

{

scanf("%s",&am

C语言

70,011

社区成员

243,256

社区内容

发帖 与我相关 我的任务 C语言 C语言相关问题讨论 复制链接

扫一扫 分享 确定 社区描述 C语言相关问题讨论 社区管理员

加入社区

获取链接或二维码

近7日

近30日

至今

加载中

查看更多榜单

社区公告

暂无公告 试试用AI创作助手写篇文章吧

+ 用AI写文章