原文: https://beginnersbook.com/2015/02/c-program-to-concatenate-two-strings-without-using-strcat/

在下面的程序中,将要求用户输入两个字符串,然后程序将它们连接起来。对于连接,我们没有使用标准库函数strcat(),而是编写了一个逻辑来在第一个字符串的末尾附加第二个字符串。

用于字符串连接的 C 程序

  1. /* C program to concatenate two strings without
  2. * using standard library function strcat()
  3. */
  4. #include <stdio.h>
  5. int main()
  6. {
  7. char str1[50], str2[50], i, j;
  8. printf("\nEnter first string: ");
  9. scanf("%s",str1);
  10. printf("\nEnter second string: ");
  11. scanf("%s",str2);
  12. /* This loop is to store the length of str1 in i
  13. * It just counts the number of characters in str1
  14. * You can also use strlen instead of this.
  15. */
  16. for(i=0; str1[i]!='\0'; ++i);
  17. /* This loop would concatenate the string str2 at
  18. * the end of str1
  19. */
  20. for(j=0; str2[j]!='\0'; ++j, ++i)
  21. {
  22. str1[i]=str2[j];
  23. }
  24. // \0 represents end of string
  25. str1[i]='\0';
  26. printf("\n输出: %s",str1);
  27. return 0;
  28. }

输出:

C 程序:在不使用`strcat`的情况下连接两个字符串 - 图1

正如您所看到的,我们已经输入了两个字符串,并且在程序的输出中两个字符串都被连接起来。