void?inputdata(int?*a)?{?int?i,j;?
}
void?outputdata(int?*a)?{?int?i,j;?
看来楼主没有理解指针必须要初始化这一定律啊.
char
*str;
str="l
love
china";
指针
str
是指向字符的,也就是指向了一个地址
赋值为str="l
china"
这里指针str的值也就是字符串
"l
的首地址
而输出的时候puts(str);
puts中的参数当然也是首地址了,如果puts的参数是字符数组,那实际上也是地址,因为数组的名字就是数组第一个元素的地址.当地址是字符串的地址时,指针会自动下移一个位置.直到遇到'\0'为止
而下面这个
scanf("%s",str);
指针没有初始化,所以是不对滴.
其实在C语言中想要动态输入字符串(也就是不浪费空间,还是很麻烦的),直到怎么回事就行,不必太纠结这个问题
#includeiostream
using namespace;
void main()
{
int a=0,b=0;
int *s=a;int *p=b;
cout"please the two numbers";
cina;
cinb;
int fun(int *a,int *b)
if(*a==*b)
cout"different\n";return 1;
else cout"same\n"; return 0;
fun(s,p);
includeiostream
using namespace std;
int a[10]={0};
int i=0,j=0,k=0,p=0,m=0;
int *x=a;int *n=a;
cout"input the "i+1"number(s)";
cina[i];
int fun(int *a)
for(;*x!=null;++x)
if(*xa[m]) break;
n=x;
cout"the max is"*n;
第四行的指针变量P是不可以输入的,是由系统分配的.而在第11行的指针就是P在和数组的指针比较,但我认为这样写不好,你可以定int变量来控制循环的次数,这样就不用指针变量了.
以上就是土嘎嘎小编为大家整理的c语言指针输入函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!