函数指针总结

最近复习c语言,这里总结一下函数指针。
首先是一般函数指针的定义。
其中两个括号是不可缺少的,(*funcPtr)表明funcPtr是一个指针,(char *, int)表明func是一个函数,函数参数为char *和int,返回值为int。接下来看下一个

阅读全文 2013年09月21日 分类:学习笔记C++

数学表示法

在笔试中有这么一道题目,写出一个表达式的后缀表示形式,当时就迷茫了,什么是后缀表达式,还真没听过。后来查了下原来是一种比较特殊的数学表达式,因为在日常生活中用的不多,不太了解。有三种表达式:前缀表达式、中缀表达式和后缀表达式。一般用的是中缀,比如1+1,前后缀就是把操作符移到前面和后面,下面我就来介绍一下这三种表达式。

阅读全文 2012年10月22日 分类:学习笔记C++C#

c++运算符重载总结

c++的一大特性就是重载(overload),通过重载可以把功能相似的几个函数合为一个,使得程序更加简洁、高效。在c++中不止函数可以重载,运算符也可以重载。由于一般数据类型间的运算符没有重载的必要,所以运算符重载主要是面向对象之间的。

1.一般运算符重载

在进行对象之间的运算时,程序会调用与运算符相对应的函数进行处理,所以运算符重载有两种方式:成员函数和友元函数。成员函数的形式比较简单,就是在类里面定义了一个与操作符相关的函数。友元函数因为没有this指针,所以形参会多一个。

阅读全文 2012年09月28日 分类:学习笔记C++

华为2013校园招聘上机试题(杭州2012-9-1)

最近华为已经在招聘了,明年的这个时候应该轮到我了,先提前练练。题目是网上找的,也不知道准不准确,一共3个编程题,是提前批的题目。

1.字符串过滤

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。

阅读全文 2012年09月21日 分类:学习笔记C++

TCHAR,WCHAR,LPSTR,LPWSTR和LPCTSTR

从现在开始要进入嵌入式的开发了,复习一下c语言,先从基本的数据类型开始。TCHAR,WCHAR,LPSTR,LPWSTR和LPCTSTR,这几个看起来差不多,也很容易混淆,他们都是跟字符有密切关系的。要想知道他们的由来以及作用就必须先了解字符的编码。

阅读全文 2012年09月15日 分类:学习笔记C++

关于fread读取的长度问题

在使用fread读取一个位图文件的时候,发现总是无法读取后面的一些字节,观察fread的返回值,并不是正确的读取次数,看来是最后几次读取没有成功。

首先查看是否单次读取超出了限制,这是fread的函数原型:

阅读全文 2012年06月20日 分类:学习笔记C++

malloc/free和new/delete

如果使用堆栈存储和静态存储就能满足应用要求,那么就不要使用动态存储。

内存的分配方式有三种:从静态存储区域分配、在堆栈上分配和从堆或自由存储空间上分配。第三种也叫动态内存分配,相比前两种,动态分配要麻烦,而且更危险,所以尽量不要使用它。

阅读全文 2012年06月13日 分类:学习笔记C++

c语言中常用数据类型的字节数

数据类型的长度跟编译器和系统有关,比如在windows下的32位编译器下的数据类型字节数:

char :1个字节
char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。)
short int : 2个字节
int: 4个字节
unsigned int : 4个字节
float: 4个字节
double: 8个字节
long: 4个字节
long long: 8个字节
unsigned long: 4个字节

阅读全文 2012年06月12日 分类:学习笔记C++

Eclipse和vs2010自动排版快捷键

用了这么久vs2010才发现,他也是可以自动排版的。泪奔。。。

VisualStudio2010自动排版快捷键:

全部代码排版:ctrl+E,D 按住ctrl,相继按下E、D 选定代码排版:Ctrl+E,F

vs2010常用快捷键:

Ctrl+Shift+U:变为大写(一般常量都用大写) Ctrl+U:变为小写 Ctrl+J:显示成员列表(光标移到.后面才会显示,不过一般敲完.后会自动出来,修改代码的时候比较有用) Ctrl+.:自动using(光标移到未using命名空间的类上)

阅读全文 2012年04月16日 分类:学习笔记C++C#Java

Ubuntu下Eclipse的配置

最近要学嵌入式,电脑上装了Ubuntu 12.04,gcc的命令行实在用的别扭,于是又装了Eclipse,但死活不能运行,总是有“launch failed. Binary file not found.”的错误。在网上找了一天终于解决了,写出来给大家看看。

首先安装Eclipse,可以到Ubuntu自带的软件中心搜索Eclipse,点击安装就行了。或者进入终端输入:

阅读全文 2012年03月09日 分类:软件学习笔记C++Ubuntu