未处理的异常VS2010 C++
Unhandled exception VS2010 C++
我正在尝试在windows上制作一个套接字来连接到服务器。
我使用的是msdn网站上的代码,winsock客户端代码
(链接:msdn.microsoft.com/en-us/library/windows/desktop/ms737591(v=vs.100).aspx)
在任何情况下,当我尝试调试所述代码时,我会收到错误消息:
Unhandled exception at 0x58a714cf (msvcr100d.dll) in Application.exe: 0xC0000005: Access violation reading location 0x00000032.
它会问我是想中断还是继续,如果我继续,同样的错误消息就会不断弹出。如果我按下break,它会把我带到文件output.c.中的第1643行
简单地说,我不知道该怎么做才能让它发挥作用,我很感激任何帮助。
编辑:
对迄今为止所有评论的回复:
输出.c中周围的相关代码是:
if (flags & (FL_LONG|FL_WIDECHAR)) {
if (text.wz == NULL) /* NULL passed, use special string */
text.wz = __wnullstring;
bufferiswide = 1;
pwch = text.wz;
while ( i-- && *pwch )
++pwch;
textlen = (int)(pwch - text.wz);
/* textlen now contains length in wide chars */
} else {
if (text.sz == NULL) /* NULL passed, use special string */
text.sz = __nullstring;
p = text.sz;
while (i-- && *p) //THIS IS WHERE IT BREAKS
++p;
textlen = (int)(p - text.sz); /* length of the string */
}
这不是我写的代码,而是已经存在的固有代码。
编辑编号2:这是一个显示我的调用堆栈的打印屏幕。我没有10的声誉,所以我不能显示图像,所以这里有一个链接到图像:
http://tinypic.com/r/5n6ww9/5
在上面你可以看到我的调用堆栈
文件output.c
包含处理printf
函数族的代码。
这里出现错误的原因可能是代码中的printf
函数调用格式错误。可能您指定了无效的打印格式,或者没有提供足够的参数。
当程序崩溃时,单击Break并查看调试窗口中的调用堆栈,以查看函数在代码中的调用位置以及参数。
我怀疑你试图打印一个空字符串或其他什么。找到printf
调用后(如果是这样的话),请编辑问题以显示源代码的该部分,和/或使用调试器检查函数参数使用的变量,并确保它们都是正确的。
如果没有看到你在崩溃地点写的代码,就不可能给出更准确的答案。
或者您可以向CString.format
插入一个空字符串,如下所示:
CString str;
str.format("%s"); //A null string
应该是
str.format("%s",mes);
其中mes
是char mes[20]
,例如
或任何其他可变
所以重点是CString.format
或Printf
可能存在一些错误
祝你好运。
- 在VS2010-VS2015下编译时,如何使用decltype作为较大类型表达式的LHS
- 如何在C++(VS2010)中设置超时读取USB端口?
- 显式 std::exception_ptr 转换为 bool 不存在.VS2010 错误?
- VS2010 C++ 调试托管 (C++/CLI) DLL
- 在VS2010上使用PCL 1.6.0的问题
- 在使用VS2010构建ACE和TAO(CORBA)时发生了许多错误
- LibVLC 的新手 - 在 VS2010 上试用 libVLC
- 提升 vs2010 上的进程错误
- 提升 ASIO 1.66 示例无法构建 - async_connect() 需要单个迭代器无法在 VS2010 上链接
- VS2010中的向量初始化
- 在vs2010中使用iostream时,出现错误C2039:'exit':不是"全局命名空间"的成员
- VS2010无法链接它应该构建的库
- 如何将字符串数组分成两个文件M C++98 / VS2010
- VS2010 和 VS2012 以及 C++11 错误 C2059:语法错误:"..."怎么走?
- 如何使用.bat文件在VS2010中添加环境变量
- error LNK2019 ARuco and OpenCV VS2010 c++
- 具有极其简单类的未解析外部符号(VS2010)
- VC++ dll 代码区域未更新:VS2010
- 将两个VS2010 C++项目构建到同一输出文件夹中
- VS2010: assert "vector iterators incompatible" in std::vector.clear()