如何使用strlen = 1将单个字符转换为char *?

时间:2017-11-08 16:34:56

标签: c string char

我试图这样做,但我找不到正确的方法。我有这个:

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

int main(){
  char a = 'a';
  char b[1] = " ";
  strcat(b,a);
  printf ("%s",b);
  return 0;
}

我知道这是错的。如何修复此代码才能将'a'转换为"a"

1 个答案:

答案 0 :(得分:3)

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

int main(){
    char a = 'a';
    char b[2] = " ";
    b[0] = a;
    printf ("%s",b);
    return 0;
}

c字符串只是一个字符数组 - 如果你想在该字符串中设置单个字符,你可以完全像其他任何数组一样。

您错过的一件事是,c字符串必须比您要存储的字符数长1 - 以存储终止\0