定义两个字符数组str1和str2,再设两个指针变量p1和p2,分别指向两个字符数组中的有关字符,通过改变指针变量的值使它们指向字符串中的不同的字符,以实现字符的复制。
编写程序:
运行程序:
程序分析:
p1,p2是指向字符型数据的指针变量。先使p1和p2分别指向字符数组元素str1[0]和str2[0]。此时*p1的值为"I",赋值语句"*p2=*p1;"的作用是将str1[0](字符'I')赋给p2所指向的元素,即str2[0]。然后p1和p2分别加1,各自指向其下面的一个元素,再将str1[1]的值赋给str2[1]……如此进行到*p1的值等于'\0'为止。注意p1和p2的值是不断在改变的。程序必须使p1和p2同步移动(这是在for语句中实现的)。
这个例子用来说明怎样使用字符指针,其实,用string变量来处理是十分简单的:
string str1 ="I love CHINA!" ,str2;
str2=str1; //将str1复制到str2