Debug日志
文章平均质量分 58
sunshineman1986
这个作者很懒,什么都没留下…
展开
-
Debug日志:一个关于“全局变量”的常见错误
昨天学习了八皇后问题,我就想:能不能写一个N皇后问题的程序呢?首先要定义一个全局变量N,然后其他变量根据N做出相应调整。结果却调了一晚上都没调出来。今天下午,我设计了几行测试代码,把与N相关的几个变量的最终值输出,结果令我大吃一惊:那几个变量根本就没有随N的变化而变化。为了验证我的猜想,我又单独设计了如下测试代码:#include using namespace std;int N;i原创 2017-07-11 19:14:07 · 532 阅读 · 0 评论 -
Debug日志:Win10无法使用内置管理员账户打开应用的解决方法
1、按下“WIN+R”输入:regedit回车,进入注册表编辑器;2、在注册表左侧依次打开:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System,在右边找到FilterAdministratorToken,双击后将数值数据改为【1】并【确定】。若没有“FilterAdministratorTok...转载 2018-07-17 15:59:43 · 887 阅读 · 0 评论 -
Debug日志:atoi()函数的测试
#include #include using namespace std;int main(){ cout << atoi("2za"); return 0;}测试结果说明了:1,atoi后面的括号中只能跟字符串,不能跟单个字符;2,atoi并不是把其他字符转换成对应的整数,而是从第一个非数字的字符开始,后面的都忽略掉。原创 2017-09-22 13:31:46 · 277 阅读 · 0 评论 -
Debug日志:char text与char *text的区别
区别在哪里?从“内部原理”上我也不知道,但是从“外特性”上我很清楚:char text是正规写法,不会造成意外崩溃的错误(比如appcrash,错误模块kernelbase.dll等);char *text是有隐患的写法,在某些程序中可以正常运行,但是另一些程序中会程序崩溃。黄维通老师这两种写法都写过,却没有说后面这个有安全隐患,这是不对的。原创 2017-09-28 22:24:11 · 569 阅读 · 0 评论 -
Debug日志:Unicode与Ansi字符集错误
我的代码build不通过,显示如下三行一样的错误码:Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style经查,解决错误的办法是:中文版:右键解决方案浏览器中的项目名->属性->配置属性->常规->字符集:把使用 Unicode转载 2017-09-28 18:51:51 · 366 阅读 · 0 评论 -
Debug日志:BOOL与bool,TRUE与true,FALSE与false
bool 与 BOOL 的区别:BOOL型在windef.h头文件中被定义,其实际类型为int,换句话说,BOOL其实就是int型变量,与布尔型bool没有什么关系。至于true和TRUE,false与FALSE:同样的,true和false是都是布尔值,而TRUE是一个int值(其值为1),FALSE也是int值(其值为0)。如果这个搞混淆了,就会出现类似转载 2017-09-28 18:14:26 · 524 阅读 · 0 评论 -
Debug日志:OOP版填充数字矩阵的一个失败反例
先看源代码://main.cpp #include #include "Matrix.h" using namespace std; const int str_length = 7;//经测试,至少为7;印证了每个汉字占2个字节('\0'占一个字节) int main() { int size;原创 2017-09-02 21:31:24 · 204 阅读 · 0 评论 -
Debug日志:流对象更名+流运算符重载实验
学堂在线《面向对象程序设计》第四章唯一的一道编程题,调试了两天,依然没有一点眉目。题目如下:在程序中输出一些信息,是一种很有效的调试方法。请设计实现一个名为Log的类,能方便输出调试信息,要求满足如下附件所写的要求:简单罗列一下,解这道题需要的知识点:1,流对象更名:从ostream输出流类的cout对象,改名为Log类的obj对象,同样要具有输出流对象的功能;转载 2017-08-30 13:33:28 · 333 阅读 · 1 评论 -
Debug日志:用new运算符动态分配二维数组的测试
#include using namespace std;int main(){ int N = 1; //设置需要输入的行数N int n = 1, m = 1; //设置动态二维数组的下标变量,初值不能赋0,只能赋1 cin >> N; //给行数N赋值 n = N; //动态的行数n被实际输入的行数N覆盖 int **array = new int *[n原创 2017-07-14 11:00:02 · 704 阅读 · 0 评论 -
Debug日志:C++中的一个switch-case陷阱
先看这段代码:#include using namespace std;int main(){ for(int i = 0; i < 10; i++){ switch(i){ case 0 : int* ptr = new int; cout << "case 0 :" << endl; cout <<"赋值前 ptr = " << ptr << e原创 2017-08-15 11:27:37 · 299 阅读 · 0 评论 -
Debug日志:Dev C++ 5.11的 int 型边界测试
int型变量在内存中占4个字节,这在以前已经用sizeof函数测试过。现在做更加细化的测试:#include using namespace std;int main(){ cout << (1 << 31); return 0;}测试结果:经验算,-2147483648正好是“负2的31次方”。实际上,在4个字节、32个比特位中,只有最左端的第31位(最右端为第0原创 2017-08-20 16:58:11 · 770 阅读 · 0 评论 -
Debug日志:C++读取任意磁盘、任意路径下的文件
之前上《程设基础》第7章的时候,我测试了好久都没有发现能够读取 非根目录 of 可执行文件(这样说不会有歧义)下的文本文件的办法。今天上午查资料时,无意中发现C语言以前读取任意路径的文件的做法就是在盘符后写两个反斜杠“\\”,然后我一试,果然就成了!测试步骤如下:1,在G盘建立一个名为“test.txt”的文本文件,内容写成“test has succeed.”2,在另一个磁盘分区下编辑代原创 2017-08-08 20:28:19 · 789 阅读 · 0 评论 -
Debug日志:Windows7或Windows10下如何调出telnet
当Windows7或者Windows10系统的命令行窗口下,不能运行telnet命令时,是由于没有安装telnet客户端的缘故。只需在“控制面板”-“程序与功能”中,打开“打开或关闭Windows功能”,在“telnet客户端”的复选框前打钩,点击“确定”,等程序运行完毕即可。再在命令行窗口输入telnet,即可转入telnet客户端执行。若要退出telnet客户端,需输入quit,而不是exit...原创 2018-07-17 16:02:00 · 541 阅读 · 0 评论