C/C++
文章平均质量分 51
duguduchong
这个作者很懒,什么都没留下…
展开
-
C++ 数据类型转换技巧
轉帖地址:http://linchunai1212.blog.163.com/blog/static/35112143201121673040334/类型转换是将一种类型的值映射为另一种类型的值。进行数据类型的转换。是在实际代码编写中经常遇到的问题,特别是字符串和其他转载 2011-10-14 08:42:37 · 1749 阅读 · 0 评论 -
解决warning: no newline at end of file
一段C++代码,在linux下编译 时提示“warning: no newline at end of file”。原因是源文件的最后一行没有回车符造成的。解决办法:在源文件的最后一行敲个回车符,重新编译。原创 2012-07-02 16:37:48 · 30916 阅读 · 0 评论 -
linux查找目录下的所有文件中是否含有某个字符串
查找目录下的所有文件中是否含有某个字符串 find .|xargs grep -ri "IBM" 查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名 find .|xargs grep -ri "IBM" -l 1.正则表达式 (1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。 (转载 2012-07-04 23:47:40 · 274348 阅读 · 8 评论 -
C++转义字符使用
编码过程中字符串可能过长,这通常需要换行,对于换行转义字符\ ,使用时要保证\后无空格,否则会出现“error C2017:非法的转义字符 ”错误 如 // ''\"后无空格string sql = "insert into table1 " \ + " values ('test')";string sql1 = "insert into table原创 2011-12-20 11:08:40 · 4694 阅读 · 1 评论 -
VS内存窗口无法滚动怎么办
今天在VS内存窗口中查看一字符串在内存中的内容,由于字符串很长很长,需要翻页显示。奇怪的是在使用了一段一时间的内存窗口后,所有的内存窗口都不能做大幅滚动,垂直滚动条只能允许滚动很小一部分。在网上搜索解离方法而不得。自己的解决办法是关闭解决方案,重新打开,搞定。分析原因:可能是VS内部问题吧。原创 2011-12-12 10:49:02 · 1018 阅读 · 0 评论 -
使用预处理器进行调试
可以使用预处理变量来避免重复包含头文件。同样可以使用类似的技术有条件的执行用于调试的代码:程序所包含的调试代码仅在开发过程中执行。当应用程序已经完成,并且准备提交时,就会将调试关闭。可使用NDEBUG预处理变量实现有条件的调试代码:int main() {#ifndef NDEBUGcerr #endif//…如 果NDEBUG未定义,那么程序会将信息写到cerr中。默认情转载 2011-11-13 15:40:37 · 951 阅读 · 0 评论 -
switch的cae不支持string 只支持常量 整型、字符、枚举
◇ 数据类型分类· 基本数据类型 固定长度型-bool, char(__int8), short(__int16), long(__int32), __int64 整型存储型{{ 不定长度型-int, enum 浮点存储型-float转载 2011-10-14 10:46:25 · 1951 阅读 · 0 评论 -
C++ 指针与引用 的区别
二者区别: 引用访问一个变量是直接访问,而指针是间接访问。 引用是一个变量的别名,本身不单独分配自己的内存空间,而指针有自己的内存空间。 引用在开始的时候就绑定到了一个内存空间(开始必须赋初值),所以他只能是这个 内存空间的名字,而不能改成其他的,当然可以改变这个内存空间的值. 例如 int i = 3,j = 4; int &x = i;//成转载 2011-11-10 10:06:46 · 594 阅读 · 0 评论 -
C++ 中 i++ 与 ++i 的本质区别
C++ 中的 i++ 和 ++i 是一对十分简洁但最容易让人忽视的操作,我已经对它们忽视了十多年,直到近日做一些迭代器时才有所体悟。在刚开始学习C++时虽然知道它们在加一操作上有一个先后的区别,但很难记住这个先后顺序,而且觉得只要不连带赋值操作时它们是等效的,所以也就没有花大力气去辨析它们,而是养成了单独使用它们的习惯,而且习惯性地只使用i++一个操作符。后来经常在转载 2011-11-09 19:47:03 · 14057 阅读 · 0 评论 -
Windows、字符集和_T宏
Microsoft Windows98和Microsoft Windows NT 使用两种不同的字符集来构成字符和字符串。Win98 及其以前 的版本使用 8位的ANSI字符集,这类似于许多程序员都熟悉的ASCII字符集。Win NT和win2000使用16位的Unicode字符集,它是ANSI字符集的一个超集。Unicode适用于国际市场上销售的应用 程序,因为它包含各种各样来自非U.S转载 2011-11-08 09:40:45 · 1767 阅读 · 0 评论 -
對結構體的認識
1結構體實際上是特殊的類結構體是只有成員變量的類,且都是公共成員變量。2.結構體也可以有構造函數結構體既然是類,自然就可以擁有構造函數,通常其函數體為空,故可以省略。以下是驗證過的可編譯的結構體struct STRUCT_DEMO{ int a; int b; bool c;STRUCT_DEMO(){ a = 0; b = 1; c = fal原创 2011-11-03 10:09:01 · 502 阅读 · 0 评论 -
對合併線程的一些認識
pthread_jion().上面是合併線程的函數.1.合併線程的作用是合併或重新合併進程中的控制流。pthread_jion()與進程中的wait()函數作用類似,導致調用線程(例如線程A,B ,如果A調用B,則A是調用線程)將掛起它的執行,直到目標線程B結束。2,線程的調用者:線程的創建者,如果線程句柄是全局的,也可被對等線程調用。3.一旦合併了一個線程,將允許操作系統原创 2011-11-01 21:28:10 · 738 阅读 · 0 评论 -
线程和进程间的相似处与区别
相似处:1,两者都有ID,一组寄存器、状态、优先级和调试策略2.两者都有向操作系统描述这个实体属性3.两者都有信息块4.两者都 与父进程共享资源5都以独立于父进程的实体运行6创建者可以在线程或进程上进行某些控制7两者都能够修改它们的属性8两者都能够创建新的资源9两者都不能访问另一个进程中的资源不同处:1.线程共享创建该进程的进程地址空间,进程有它转载 2011-10-29 20:48:54 · 1416 阅读 · 0 评论 -
参数中有const时进行数据类型的转换问题-固定变量转常量
今天 晚上被数据类型转换的问题卡了很久,公司 用CPPIString类封装了std::string,用CPPIUString装了wstring。问题的解决简化后如代码所下,func(const CPPIUString& ustr){CPPIString str;str=const_cast(ustr).ToString();//将固定变量变化常量}其它方法均不原创 2011-10-26 23:28:31 · 2118 阅读 · 0 评论 -
标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast和const_cast(转载)
原贴地址:http://mkhgg.blog.51cto.com/1741572/402177C 风格(C-style)强制转型如下:(T) exdivssion // cast exdivssion to be of type T函数风格(Function-style)强制转型使用这样的语法:T(exdivssion) // cast exdivssion to转载 2011-10-26 23:00:28 · 472 阅读 · 0 评论 -
VS2005断点失效的问题
今天調試過程中出現了不能定位到斷點的情況,網上搜索到這篇博文順利解決 原博文地址:http://www.cppblog.com/Fox/archive/2009/01/04/71110.htmlVS2005下使用VC,部分断点无效,显示『当前不会命中断点。还没有为转载 2011-10-18 20:04:28 · 537 阅读 · 0 评论 -
静态加载库文件时编译器提示找不到该文件的一种可能
今天下午遇到了件挺囧的事,平时还真没注意,出现问题后着实困惑,特写在这里我们知道Dll的调用 方式有两种:动态和静态(1) 动态调用:typedef int(*lpAddFun)(int, int); //宏定义函数指针类型lpAddFun add;//函数指针原创 2011-10-12 18:13:40 · 2463 阅读 · 0 评论 -
warning: this decimal constant is unsigned only in ISO C90
关于c语言中的大整数常量--by流氓兔斯基之前编译程序的时候发现了这个问题:warning: this decimal constant is unsigned only in ISO C90找了一下解决方式,记录一下:1 在常数后面增加一个UL标识,或者ULL表示,如4294967295UL,这样就不会报警了2 使用十六进制的数字,如0xFFFFFFFF3 使用gcc -st转载 2012-07-02 18:36:41 · 17533 阅读 · 0 评论