今天写了个程序要求字符串提取字符,结果用了以下代码不能正确返回。
char* CharToStr(char a, char b)
{
char str[3];
str[0] = a;
str[1] = b;
str[2] = '\0';
return str;
}
后来网上查了下,才发现是作用域的问题。
可以用static保存返回值。
char* CharToStr(char a, char b)
{
static char str[3];
str[0] = a;
str[1] = b;
str[2] = '\0';
return str;
}
放着提醒自己下。