搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 请教:调用 atoi 函数是如果里面的字符串是指针,该怎样转变成整数?
标题:
请教:调用 atoi 函数是如果里面的字符串是指针,该怎样转变成整数?
只看楼主
wu2782641803
等 级:
论坛游民
帖 子:65
专家分:46
注 册:2013-10-28
结帖率:
88.24%
楼主
已结贴
√
问题点数:12 回复次数:6
请教:调用 atoi 函数是如果里面的字符串是指针,该怎样转变成整数?
比如: char *p;
char a[]="hello";
p=a;
int b;
b=atoi(p); //调用#include<stdlib.h>
搜索更多相关主题的帖子:
include
字符串
hello
2014-05-16 19:05
wu2782641803
等 级:
论坛游民
帖 子:65
专家分:46
注 册:2013-10-28
第
2
楼
得分:0
在说详细点: 我是这样调用的:if(p->[4]!='-'||p->[7]!='-'||atoi(p->[5])<2||atoi(p->[8])<4) //come 是结构体字符数组
2014-05-16 19:07
wu2782641803
等 级:
论坛游民
帖 子:65
专家分:46
注 册:2013-10-28
第
3
楼
得分:0
这是出错结果: error: invalid conversion from `char' to `const char*'
2014-05-16 19:08
vvvcuu
等 级:
贵宾
威 望:
12
帖 子:353
专家分:1253
注 册:2014-4-22
第
4
楼
得分:6
调用函数之前,最好先打开包含此函数的头文件, 看一下此函数的原型及具体的代码.
这样才能更好的了解函数使用函数.
不同的函数在不同编译器的头文件里定义是不一样, 这些包括函数的执行过程,函数的参数类型, 函数的返回值类型等等.
atoi()说是转换字符串为整型,其实是截取字符串中非数字前的整数. 你的代码即使能够正确运行,最多会返回0,而不是返回其他的数字.
代码测试环境: WinXP+C-Free5.0.
2014-05-16 19:22
wu2782641803
等 级:
论坛游民
帖 子:65
专家分:46
注 册:2013-10-28
第
5
楼
得分:0
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a;
char b[]="123";
char c[]="456";
a=atoi(b)+atoi(c);
printf("%d",a);
return 0;
} 截取字符串中非数字前的整数??不懂!!为什么这样的代码又可以运行!!!
2014-05-17 08:16
rmbking
等 级:
论坛游侠
威 望:
1
帖 子:36
专家分:157
注 册:2014-3-19
第
6
楼
得分:6
显然可以运行吧,截取字符串中非数字前的整数是指输入的字符串中没被其他字符干扰的部分,如输入为“123sdkjl”输出为123,如果字符串为“di123”,则会输出0,表示字符串最前面的子串中没有合法数字字符串。
2014-05-17 11:38
wu2782641803
等 级:
论坛游民
帖 子:65
专家分:46
注 册:2013-10-28
第
7
楼
得分:0
现在我的问题不是这个!!而是我用的结构体指针只想它,if(p->[4]!='-'||p->[7]!='-'||atoi(p->[5])<2||atoi(p->[8])<4) //come 是结构体字符数组 。come字符串输入的当然是数字,我现在是想怎么才能使atoi(p->[5])<2这句没问题!!我把atoi(p->[5])它赋值给int i;也有问题!!!有点糊涂这里!!
2014-05-17 15:49
7
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-431635-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.964399 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved