原文: https://www.programiz.com/c-programming/examples/concatenate-string

在此示例中,您将学习手动连接两个字符串,而无需使用strcat()函数。

要理解此示例,您应该了解以下 C 编程主题:


如您所知,在 C 编程中连接两个字符串的最佳方法是使用strcat()函数。 但是,在此示例中,我们将手动连接两个字符串。


在不使用strcat()的情况下连接两个字符串

  1. #include <stdio.h>
  2. int main() {
  3. char s1[100] = "programming ", s2[] = "is awesome";
  4. int i, j;
  5. // length of s1 is stored in i
  6. for (i = 0; s1[i] != '\0'; ++i) {
  7. printf("i = %d\n", i);
  8. }
  9. // concatenating each character of s2 to s1
  10. for (j = 0; s2[j] != '\0'; ++j, ++i) {
  11. s1[i] = s2[j];
  12. }
  13. // terminating s1 string
  14. s1[i] = '\0';
  15. printf("After concatenation: ");
  16. puts(s1);
  17. return 0;
  18. }

输出

  1. After concatenation: programming is awesome

在这里,字符串s1s2连接在一起,结果存储在s1中。

重要的是要注意,s1的长度应足以在连接后容纳字符串。 如果没有,您可能会得到意外的输出。