首页 > 解决方案 > char 数组中的特殊字符

问题描述

我正在尝试从 char 数组中检索一些文本,如下所示:

unsigned char some_variable[3][10] = {"text1","text2","text3"};

int i;

for(i=0;i<3;i++){
    functionIcantChange(some_variable[i])
}

我遇到了这个问题,因为这个 functionICantChange 需要像 "hello" 和 "world" 这样的参数,其中包括"字符。例如,通过调用 some_variable[0] 我只得到text1

在将数组传递给函数之前,我需要将"字符添加到数组中。我该怎么做?

标签: c

解决方案


我建议您使用 sprintf 在数组的前后插入引号。您将需要一些大缓冲区来保存变量的值。

char buffer[255];
sprintf(buffer, "\"%s\"", some_variable[i]);
functionIcantChange(buffer);

推荐阅读