c学习笔记
文章平均质量分 82
shitangdejiaozi
游戏开发菜鸟
展开
-
赋值运算符函数的注意事项 ,指针和多维数组的讨论 (c/c++)
1.赋值运算符函数String & String::operator = (String & str) { if(this == &str) return *this; delete[]m_pdata; m_pdata = null; m_pdata = new char[strlen(str.m_pdata)+1]; strcp原创 2015-11-12 11:17:59 · 653 阅读 · 0 评论 -
字符串数组char[]和字符串指针char*的讨论
相同点1.char *a ,和char a[]在作为形参的时候完全相同。 2.在初始化时,都可以使用常量字符串,区别1.内容地址不同char * a = “abcd”; 此时“abcd”存放在常量区,然后在栈上分配内存给a,并指向“abcd”在常量区的首地址。对于指针本身a来说,它是可变的,允许修改,可以指向其他的地址。但是a所指向的内容为常量,不可以改变它。 char a [] = “abc原创 2015-11-23 15:37:09 · 807 阅读 · 0 评论 -
指针基础知识 ,破坏指针数组的讨论,
1,未初始化和非法的指针int * a; * a = 12; a 未被初始化,不知道指向哪里有,可能指向一个合法地址,把12存储到a所指的内存位置,可能就篡改一个合法的值。2,NULL指针它是一个特殊的指针,表示不指向任何东西。 使一个指针变量为NULL,可以赋一个零值。 但是需要注意的是,对一个NULL指针解引用是非法的,所以在对指针解引用之前要确定它非一个NULL指针。3,左值和右值的区原创 2016-03-17 21:20:45 · 550 阅读 · 0 评论 -
c语言学习之位运算知识总结和实例分析
先给大家讲个笑话吧,说世界上有10种人,一种知道二进制,而另一种不知道二进制。 位运算的基础就是二进制。二进制的位运算包括五种运算:与,或,异或,左移,右移 与(&) 0&0 = 0,0&1 = 0;1&0 = 0;1&1 = 1; 或(|) 0|0 = 0, 0|1 = 1; 1|0 = 1; 1|1 = 1; 异或(^)0^0 =0; 0^1 = 1; 1^0 = 1原创 2016-03-22 16:51:54 · 3210 阅读 · 1 评论 -
c语言学习之函数补漏
每次回头看一些c的基础知识,都有新感觉,觉得这个怎么以前没见到过,靠,这么吊,这又是啥。零零碎碎的东西太多,脑子瞬间感觉不够用啦。 一些基础的就不在这啰嗦了,记录一些不常用的点,以后再来看,不用再翻箱倒柜的找了。1.函数的缺省认定这个主要提到函数原型的重要性,函数原型的作用就是让编译器知道函数的参数数量和类型,以及返回值类型。如果没有原型,直接调用,编译器是默认返回整型。 float f; f原创 2016-03-23 11:53:52 · 623 阅读 · 0 评论