书上的示例代码,感觉与问题不符

题为“将字符串a,b连接起来”,但并没有看到字符串的连接

#include<stdio.h>


main() {
    char str1[] = "you are good ";
    char str2[30];
    char* p1, * p2;
    p1 = str1;
    p2 = str2;
    while (*p1 != '\0') {
        *p2 = *p1;
        p1++;
        p2++;
    }
    *p2 ='\0';
    puts(str1);









}


这个应该是**将字符串str1复制为str2,并输出**的代码吧。你的代码中并未输出str2。

#include <stdio.h>
#include <stdlib.h>
main() {
    char str1[] = "you are good ";
    char str2[30];

    char* p1, * p2;
    p1 = str1;
    p2 = str2;
    while (*p1 != '\0') {
        *p2 = *p1;
        p1++;
        p2++;
    }
    *p2 ='\0';
    puts(str1);
    puts(str2);
    }