我是C++的新手,无法为函数的char *赋值。我有一个函数如下返回布尔bool函数的返回值和传递的指针作为参数
bool Function(char* inString)
{
int m = strlen(inString);
char output[1001];
memset(output , 0 , sizeof(output));
sprintf_s(output,50,"length is %d",m);
if(m>5)
return true;
if(m<5)
return false;
}
随着功能,我试图让调用这个函数之外定义该功能具有价值内部本地“输出”价值 - “长 - ”
我试着做
bool Function(char* inString)
{
int m = strlen(inString);
char output[1001];
memset(output , 0 , sizeof(output));
sprintf_s(output,50,"length is %d",m);
sprintf_s(inString,50,output);
if(m>5)
return true;
if(m<5)
return false;
}
但这种失败,因为inString早已值,这是给下面的错误 访问冲突写入位置0x00165267。
有没有什么办法从这个函数(基于字符串长度的bool值)以及b)字符串语句“输出”获取这两个参数?
我很感谢你的帮助..
如果'm == 5'?您的功能不包括所有可能性的退货。 –
m == 5显然没有找到文件:http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx –
如果是C++,请避免C字符串和(通常)指针。 – Roddy