标题:[求助]函数中的指针还数组的关系
只看楼主
dubaoshi
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2006-9-22
 问题点数:0 回复次数:3 
[求助]函数中的指针还数组的关系

下面的小程序的意思是向一个字符串(this is a test)的后面添加空格符,直到指定的长度(40个)。
我有个问题:
为什么在函数pad()中可以用指针代替主程序中的str字符串?
具体程序如下:
#include<stdio.h>
#include<string.h>

main()
{
char str[80];
strcpy(str,"this is a test");
pad(str,40);
printf("%s",str);
getch();
return 0;
}
pad(char *s,int length)
{
int l;
l=strlen(s);
while(l<length){
s[l]=' ';
l++;
}
s[l]='\0';
printf("%s\n",s);
}
请大侠们指点一二

我好象大概想明白了,我认为:
是把主程序中的str字符串的首地址给了*s指针,或者说,s=&str,不知道这样理解对不对?
可是为什么不直接用一个字符串呢来接收主程序中的str?

[此贴子已经被作者于2006-9-22 15:55:50编辑过]

搜索更多相关主题的帖子: 指针 函数 关系 str include 
2006-09-22 15:45
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 

s=str=&str[0];

函数在使用用数组做实参时,是把它转换为指针进行操作的.


倚天照海花无数,流水高山心自知。
2006-09-22 16:04
dubaoshi
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2006-9-22
得分:0 
版主效率真高!这一会就给回复了,谢谢。
版主有啥C语言的成果没?给我见识一下啊

人行善,福虽未至,祸已远离;人行恶,祸虽未至,福已远离.
2006-09-22 16:11
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 

不好意思,学的太少,没能力...

在线的话,当然会尽力所为了,我也不是经常在的.

倚天照海花无数,流水高山心自知。
2006-09-22 16:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-92174-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017292 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved