友
我想将以下代码集成到主应用程序代码中.填充了o/p字符串的垃圾字符转储应用程序以下代码snipette不起作用..
void stringCheck(char*); int main() { char some_str[] = "Common Application FE LBS Serverr is down"; stringCheck(some_str); } void stringCheck(char * newString) { for(int i=0;i128) { TRACE(" JUNK Characters in Application Error message FROM DCE IS = "<<(char)newString[i]<<"++++++"<<(int)newString[i]); } } }
有人可以告诉我更好的方法来找到字符串中的垃圾字符..
非常感谢
你char
可能代表签名了.将其强制转换unsigned char
为避免在转换为int
以下时变为负整数:
if ((unsigned char)newString[i] >128)
根据您的需要,isprint
可以做得更好,检查可打印字符,包括空格:
if (!isprint((unsigned char)newString[i])) ...
请注意,您必须转换为unsigned char
:输入for 和isprint
值之间的值0
和UCHAR_MAX
作为字符值.