wow7jiao 发表于 2018-6-6 15:46:57

strncat函数

本帖最后由 wow7jiao 于 2018-6-6 15:50 编辑

#include <stdio.h>
#include <string.h>

int main()
{
      char str1 = "I ";
      char str2 = "love ";
      char str3 = "FishC.com!";

      strncat(str1, str2, 6);
      strncat(str1, str3, 11);

      printf("str1: %s\n", str1);

      return 0;
}

请问第二句源字符串小于n不填充'\0'(但是又有'\0')如何理解,我试验一下都填充了'\0'

BngThea 发表于 2018-6-6 15:46:58

比如字符串str2为'love'
如果strncat(str1,str2,10);
那么后面多的字符位置,不会全部填充为'\0',只是在字符串结尾的的后面加一个'\0'

wow7jiao 发表于 2018-6-6 16:06:12

受教了, strncpy 居然填充了那么多'\0'
页: [1]
查看完整版本: strncat函数