调试过程中字符串显示不能太长的一种解决方案

在调试过程中有些时候字符太长了,VC的调试环境下默认能显示的长度有限,可能是256,用TRACE(str)函数可以显示512个字符,但是如果字符比这个还要长的时候,在调试的时候,中途显示的字符就不能知道了。
当然一般用到这么长的时间还需要调试的情况并不多见,但是在写数据字构造SQL语句的时候,很容易就会产生一个很长的字符,这个时候中途就很难办了。有时候我会把它打印到文本框中,但是这样太麻烦了。今天想到一种方法,就是利用文件,将那些很长的字符串写到文件中,这样就可以看到自己所需要的文本了。
以下是它的代码:
 CFile file;
 file.Open("outData.txt",CFile::modeCreate|CFile::modeWrite);
 file.SeekToBegin();
 file.Write((unsigned char *)(exeSQL.GetBuffer(0)),exeSQL.GetLength());
 file.Flush();
 file.Close();
加上这一段就可以将它们输出到文本中了

也可以将它复制到剪贴板上,通过代码拷出来,以下是它代码
 CString source=exeSQL;
 //文本内容保存在source变量中
 if( OpenClipboard() )
 {
  HGLOBAL clipbuffer;
  char * buffer;
  EmptyClipboard();
  clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength()+1);
  buffer = (char*)GlobalLock(clipbuffer);
  strcpy(buffer, LPCSTR(source));
  GlobalUnlock(clipbuffer);
  SetClipboardData(CF_TEXT,clipbuffer);
  CloseClipboard();
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值