拖拉机水箱漏水怎么办:逆序打印串怎么两个p--

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/01 11:30:03
下面是代码:
#include <stdio.h>
void main()
{
char *p,*q="Language";
for(p=q;*p!='\0';)p++;
for(p--;p>=q;p--);就这里怎么两个p--啊?
putchar(*p);
putchar('\n');
}

第一个p--只是初试化,只执行一次了。
因为for(p=q;*p!='\0';)p++; 这个语句把p指向了'\0'
p--把p指向e

for(p--;p>=q;p--);
也可以是
p--;
for(p;p>=q;p--);

#include<iostream.h>
voidmain()
{chara[50],t;
inti,j;
cin.getline(a,50);
for(i=0,j=strlen(a);i<j;i++,j--)
{t=a[i];a[i]=a[j];a[j]=t;}
cout<<a;
cin.get();
}

因为 "for(p=q;*p!='\0';)p++;"执行完成后,p是指向串尾的'\0'的,
所以第一个p--是将p指向最末尾的一个字符