C/C++软件工程师就业求职手册节选一
1、有符号变量与无符号变量值的变换
将有符号变量转换为无符号变量,注意负数的转换。
2、数值的交换
//使用临时变量
void Swap1(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
}
//使用算术运算,易发生数据的溢出
void Swap2(int &a, int &b)
{
a = a + b;
b = a - b;
a = a - b;
}
//使用位运算符
void Swap3(int &a, int &b)
{
a ^= b;
b ^= a;
a ^= b;
}
3、关于头文件的结构的理解
1 #ifndef _INCvxWorksh
2 #define _INCvxWorksh
3 #ifdef _Cplusplus
4 extern "C" {
5 #endif
6
7 #ifdef _cplusplus
8 }
9 #endif
10 #endif
第1、2、10行的作用是防止头文件被重复引用。
代码第3行的作用是表示当前使用的是C++编译器
第4-8行中的extern “C”是c++编译器提供的与C连接交换指定的符号,用来解决名字匹配问题。
extern “C”包含双重含义:
(1)被它修饰的目标是"extern"的。也就是告诉编译器,其声明的函数和变量可以在本模块或其他模块总使用。通常,在模块的头文件中对本模块供给其他模块引用的函数和全局变量以关键字extern声明
(2)被它修饰的目标是"C"的,意思是其修饰的变量和函数是按照C语言的方式编译和链接的。
4、Main函数之后的调用
atexit()函数用来注册程序正常终止时要被调用的函数,并且在main函数结束时调用这些函数的顺序与他们注册的顺序相反。
相关文档:
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->
是C深度解剖 P47的一系列关于define和typedef的用法:
/****以下是
#define
a int[10]
的各种用法,都报错
***
a[10]
a[10];
//**************
a[10]
a;
//**************
int
a[10];
//*** ......
__DATE__
进行预处理的日期(“Mmm dd yyyy”形式的字符串文字)
__FILE__
代表当前源代码文件名的字符串文字
__LINE__
代表当前源代码中的行号的整数常量
__TIME__
源文件编译时间,格式微“hh:mm:ss”
__func__
当前所在函数名
下面一个例子是打印上面这些预定义的宏的。
#in ......
原文地址:http://www.henryxu.com/post/1.html
C++的格式化字符串经常用作格式化数字的输出、字符串合并和转换等等很多场合。
1. 格式化规定符
━━━━━━━━━━━━━━━━━━━━━━━━━━
符号 &nbs ......
两个月前,也就是9月份,心血来潮在windows下实现了用C连接数据库,当时很是有把linux下一并给实现了。但是没有想得那么简单。这个任务一直推迟到了现在才完成,究其原因:1.我直接用eclipse开发工具,对于环境变量的设置不是很熟。2.linux系统库文件结构不熟悉,对于mysql提供的库文件没有放对 ......