c语言 指针 基础问题

#include<stdio.h>#include<string.h>#include<ctype.h>#defineN9longctod(char*s){longd=0... #include <stdio.h>
#include <string.h>
#include <ctype.h>
#define N 9
long ctod( char *s )
{ long d=0;
while(*s)
if(isdigit( *s)) {
d=d*10+*s-'0';
s++;
}
return d;
}
long fun( char *a, char *b )
{
return ctod(a)+ctod(b);
}
这里引用ctod函数为什么是ctod(a)而不是ctod(*a),引用a代表的地址和引用*a代表的内容有什么具体区别?谢谢啦
展开
 我来答
神话杜十三
2017-03-21 · TA获得超过207个赞
知道小有建树答主
回答量:217
采纳率:86%
帮助的人:165万
展开全部

引用ctod函数为什么是ctod(a)而不是ctod(*a)

首先  函数定义:    long ctod( char *s )

ctod的参数char *s , 为指针类型。 所以调用时采用 ctod(a) 而不是ctod(*a)。


引用a代表的地址和引用*a代表的内容有什么具体区别

关于指针“a”和指针的值“*a”。

如    char *a = "abcedf";

如果使用变量a,即代表"abcedf"的首地址。

如果使用变量*a, 这个值就是字符'a'。


*被成为取值运算符,就是用来取指针(指定地址)的值。

听不清啊
高粉答主

2017-03-21 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
因为定义的是 ctod( char *s )
即形参是一个指针(地址),所以,a就是一个指向字符的地址。符合要求。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
娱乐文风
2020-04-25 · 贡献了超过121个回答
知道答主
回答量:121
采纳率:100%
帮助的人:5.8万
展开全部

30分钟彻底学会C语言指针

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式