【问题标题】:How to copy a char pointer into a char array? [duplicate]如何将 char 指针复制到 char 数组中? [复制]
【发布时间】:2013-11-28 22:32:25
【问题描述】:

所以我有一个指向 char 数组的指针:

temporaryVariable->arrayOfElements; // arrayOfElements is char*

我想复制到我用方括号声明的 char 数组中:

char stringArray[MAXIMUM_LINE_LENGTH + 1];

我该怎么做?

【问题讨论】:

    标签: c string pointers arrays


    【解决方案1】:

    使用strncpy:

    strncpy(stringArray, temporaryVariable->arrayOfElements, sizeof(stringArray));
    stringArray[sizeof(stringArray) - 1] = '\0';
    

    【讨论】:

    • 我还注意到,如果不适合截断字符串,他可以事先检查是否适合
    【解决方案2】:

    这段代码也可以。

    snprintf(stringArray,MAXIMUM_LINE_LENGTH + 1,"%s",temporaryVariable->arrayOfElements);
    

    【讨论】:

      猜你喜欢
      • 2023-03-08
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-04
      • 2016-07-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多