C/C++
Qcontriver
这个作者很懒,什么都没留下…
展开
-
C++ _tmain和main不同?
用过C的人都知道每一个C的程序都会有一个main(),但有时看别人写的程序发现主函数不是int main(),而是int _tmain(),而且头文件也不是而是,会困惑吧?一起来看看他们有什么关系吧 首先,这个_tmain()是为了支持unicode所使用的ma转载 2011-08-18 11:32:34 · 1563 阅读 · 0 评论 -
虚函数表解析
摘抄来源:http://www.cplusplus.com/articles/iy6AC542/As a small warm-up before the article, I would like readers to ask themselves: does a photographer need to know how camera works in order to make转载 2015-04-21 16:50:12 · 712 阅读 · 0 评论 -
static_cast, dynamic_cast, const_cast, reinterpret_cast
0 引入Q:什么是C风格转换?什么是static_cast, dynamic_cast 以及 reinterpret_cast?区别是什么?为什么要注意?A:转换的含义是通过改变一个变量的类型为别的类型从而改变该变量的表示方式。为了类型转换一个简单对象为另一个对象你会使用传统的类型转换操作符。比如,为了转换一个类型为doubole的浮点数的指针到整型:代码:int i;do转载 2015-04-06 16:06:49 · 526 阅读 · 0 评论 -
常量指针和指针常量
对下列语句正确的描述是?const int *x; //①int * const x; //②语句①的含义是指针变量x不能更改语句②的含义是指针变量x所指向的值不能更改语句②的含义是指针变量x不能更改语句①和②相同含义的不同定义方式对于这样一个题目,要记住一句话:const 修饰的是离它最近的对象对于1)来讲,不妨这样写 const ( int *x);原创 2015-03-25 15:22:12 · 544 阅读 · 0 评论 -
指针与引用 的区别
相同点:1)都是地址的概念2)当改变指针指向内存的值或者改变引用的值时,原值都会发生改变不同点:1)指针是一个实体,而引用仅是个别名;2)引用使用时无需解引用(*),指针需要解引用;3)引用定义时必须初始化,且指向的对象不再改变;指针可以先定义后赋值,指向的对象可以改变;4)引用没有 const,指针有 const,const 的指针不可变;5)引用不能为Null,原创 2015-03-23 20:10:55 · 699 阅读 · 0 评论 -
strcpy实现机制,数组越界-->memcpy,memmove
先来看一个常见的C++面试题目:void test(){ charstring[10],str1[10]; int i; for(i=0; i<10; i++) { str1[i] ='a'; } strcpy( string, str1 );}这个题目错误在于哪里?答:数组越界,在对str[i] = 'a';循环赋值过程中最后没有'/0'标识符,导致在strcpy原创 2015-03-27 17:35:09 · 1849 阅读 · 0 评论 -
数字,字符,字符串转换
1)数字转为字符例如将1转换为'1',采用+‘0’的方式:int a = 1;char b = a + '0';//b = '1'2)如果是字符串的话string str = "a" + 1;printf("str = %s",str); //str = null;string类重载了 = 可以将 char * 转换为string对象,"a"是个char * ,原创 2015-03-30 10:33:57 · 1278 阅读 · 0 评论 -
bit、位、byte、B、字节、字符等换算
1)bit = 位:是二进制中的一位,是计算机表示数据的最小单位,也就是说是二进制中01中的一位2)字节:byte = B = Byte = 字节 ,是计算机存储的最小单位 ,1byte = 1B = 1Byte = 1 字节 = 8bit3)字符:字符>=字节,1个英文字母 = 1字节 = 8 bit, 1 个中文字符 = 2字节 = 16bit4)数字:在ASC码中,‘0’-‘原创 2015-03-21 11:11:35 · 19294 阅读 · 0 评论 -
sizeof详解,与strlen区别
一:定义首先说明,sizeof不是一个函数,是一个C/C++中的一个操作符,它判断数据类型或者表达式占用的内存字节数,计算是在程序编译时进行,而不是在程序执行的过程中才计算。返回值类型为:size_t。MSDN:The sizeof keyword gives the amount of storage, in bytes, associated with avariable or转载 2015-03-21 17:06:17 · 551 阅读 · 0 评论 -
指针,变量的生存期及作用范围,良好的动态内存申请和释放习惯
试题1:void GetMemory( char*p ){ p = (char*) malloc( 100 );}void Test( void ) { char*str = NULL; GetMemory( str ); strcpy( str, "hello world" ); printf( str );}转载 2015-03-27 18:08:15 · 1046 阅读 · 0 评论 -
C++中string类的七个构造函数用法用例
cout<<"pop1,pop2: "<<pop1<<", "<<pop2<<endl;原创 2014-07-01 10:50:10 · 7406 阅读 · 0 评论 -
[转]让 Code Review成为一种习惯
转自:http://mobile.51cto.com/aprogram-472272.htm1.开篇5月份的时候突然接到 code.oa.com【腾讯内部的一个代码管理平台】 的 summer 的通知, 说广点通的codereview 参与度在公司各部门中表现出色,而我们小组(广点通广告定向小组)的 codereview 综合表现在全公司的小组中排名第一。这让我有点意外转载 2015-05-14 09:17:52 · 1168 阅读 · 0 评论