
下面几个c语言问题麻烦高手给指点一下吧?
1、设chars[]="program",*p=s;那么数组s的长度与strlen(p)的值一样吗?关键是给说一下数组长度是怎么算的谢谢了!2、下面一个程序执行结果是0,...
1、设char s[]="program", *p=s;那么数组s的长度与strlen(p)的值一样吗?关键是给说一下数组长度是怎么算的谢谢了!
2、下面一个程序执行结果是0,到底是怎么执行的啊,麻烦给详细解释一下吧:
#include "stdio.h"
int fun(char*ps)
{ char *p;
p=ps;
while(*p++)
return (p==ps);
}
void main()
{
char *p="12345";
printf("%d",fun(p));
}
3、一个函数的头部是int fun( int x,int y)
对该函数进行声明时写成 int fun();也对的为什么啊,没有形参的类型也行吗?
4、char ch;
do{ ch=getchar();
putchar(ch);
} while(ch!=E0F);
我是这样理解的,按照程序执行的顺序每输入一个字符它就会有一个putchar输出,而实际情况是当最后输入回车键时才一起输出,为什么呢?到底是怎么运行的呢? 展开
2、下面一个程序执行结果是0,到底是怎么执行的啊,麻烦给详细解释一下吧:
#include "stdio.h"
int fun(char*ps)
{ char *p;
p=ps;
while(*p++)
return (p==ps);
}
void main()
{
char *p="12345";
printf("%d",fun(p));
}
3、一个函数的头部是int fun( int x,int y)
对该函数进行声明时写成 int fun();也对的为什么啊,没有形参的类型也行吗?
4、char ch;
do{ ch=getchar();
putchar(ch);
} while(ch!=E0F);
我是这样理解的,按照程序执行的顺序每输入一个字符它就会有一个putchar输出,而实际情况是当最后输入回车键时才一起输出,为什么呢?到底是怎么运行的呢? 展开
2个回答
展开全部
1、一样长,字符数组长度就是字符的个数
2、while(*p++)这句执行过后p这个指针就向后移动了一位所以当判断p==ps自然不成立啊 返回0
3、可以没有参数的,而且也很常见的
4、这句是关键while(ch!=EOF);,具体规则一两句说不清见http://baike.baidu.com/view/56074.htm
哎,累死了 希望能帮到你哈,请把我的回答归类为“最佳答案”哦,谢谢!
2、while(*p++)这句执行过后p这个指针就向后移动了一位所以当判断p==ps自然不成立啊 返回0
3、可以没有参数的,而且也很常见的
4、这句是关键while(ch!=EOF);,具体规则一两句说不清见http://baike.baidu.com/view/56074.htm
哎,累死了 希望能帮到你哈,请把我的回答归类为“最佳答案”哦,谢谢!
追问
可是答案说的第一题值不一样哎!数组长度包括\0吗
追答
字符数组要包括\0 ,指针不包括
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询