【问题标题】:C: Append string by intC:通过 int 附加字符串
【发布时间】:2015-04-22 21:07:33
【问题描述】:

我正在尝试获取一个字符串,然后用 int 跟随它。这是我现在的代码

int myint = 7;
string mystring = "string" + myint;

有什么帮助吗?

【问题讨论】:

    标签: c string append


    【解决方案1】:

    c中没有string类型,c字符串的定义是

    • '\0'nul 字节结尾的字节序列。

    你可以这样使用snprintf()

    #include <stdio.h>
    
    int  myint       = 7;
    char string[100] = "string";
    
    snprintf(string, sizeof(string), "%d", myint);
    

    这并不总是有效,但它适用于您当前的示例。

    如果你不分配内存并用指针指向它,你不能将它与指针一起使用,这可以通过这种方式实现

    #include <stdlib.h> 
    #include <stdio.h>
    
    int   myint;
    char *string;
    
    myint  = 7;
    string = malloc(100);
    
    snprintf(string, 100, "mystring%d", myint);
    /* when you are done using 'string', then */
    free(string);
    

    【讨论】:

    • 好的,我应该提一下,我要说谢谢,直到 sass 来袭。我粘贴我所拥有的唯一原因是为了有一个示例以防问题不清楚,并且认为如果我发布我想要的 Objective-C 作为示例将是无关紧要的。好吗?
    • 我只是说答案可能没有“似乎你不知道字符串在 c 中是如何工作的”,这是我指出的虚假示例,只是为了以防万一我问的不清楚
    • @TheCommonGiraffe 太粗鲁了,你说得对,我只是以为你是从 JavaScript 背景来的,所以我删除了那部分......对不起。你看,如果你有 javascript 背景,你会很难理解 c 字符串。我删除了令人反感的部分,再次非常抱歉。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-04
    • 2020-11-18
    • 2013-10-06
    • 2012-11-09
    • 2010-09-09
    相关资源
    最近更新 更多