在大二考程序语言时,就只是对着一百多道题目使劲的做了,好多概念还是稀里糊涂的,今天看到个小例子,使用C++来说实现指针形式访问字符串,拿来学习。使用指针玩字符串,“神奇的指针哟,指向整型的指针int *p1,可以操作整型数组int a[];指向字符型的指针char *p2,可以操作字符数组(字符串)char str[];指向指针的指针可以操作二维数组。”更灵活的是,在函数的传递中,指针、数组名在一定程度上可以互换。试图通过编制操作字符串的函数,实现字符串的操作。
实现的功能:字符串str1和str2连接,连接后的结果存放到str1中
用数组名作形参:void astrcat(char str1[], const char str2[])
用指针作形参:void pstrcat(char *str1, const char *str2)
参考代码:
1 //字符串连接函数实现和测试示例 2 #include3 using namespace std; 4 void astrcat(char str1[], const char str2[]); 5 void pstrcat(char *str1, const char *str2); 6 int main(void) 7 { 8 char s1[50]="Hello world. "; 9 char s2[50]="Good morning! "; 10 //从下面的调用中可以体会数组、指针本质上的相同一面 11 astrcat(s1,s2); //参考1楼评论,合并后s1放不下怎么办? 12 cout<<"连接后:"< <