C/C++软件工程师就业求职手册节选二
5、#define宏定义。宏只是简单的文本替换,很容易引起歧义。
#include <stdio.h>
#define CONS(a,b) (int)(a##e##b)
#define STR(s) #s
int main()
{
printf(STR(vck));
printf("\n");
printf("%d\n",CONS(2,3));
return 0;
}
在本程序中,使用#将宏参数变为一个字符串,用##把两个宏参数贴合在一起,结果为:
vck
2000
6、宏定义得到字的高位和低位字节
#define WORD_LO(xxx) ((byte)((word)(xxx)&255))
#define WORD_HI(xxx) ((byte)((word)(xxx)>>8))
7、const与#define的个子特点与区别
#define只是用来做文本替换,那么,当程序进行编译的时候,编译器首先会将“#define PI 3.1415826”以后所有代码中的PI全部换成“3.1415826”然后再进行编译。因为#define长了生命周至于编译期,它存在于程序的 代码段,在实际程序中,它只是一个常数,一个命令中的参数,并没有时间的存在。
const常量存在于程序的数据段中,并在堆栈中分配了空间,const常量是一个Run-time的概念,它在程序中确确实实存在着并可以被调用,传递。const常量有数据类型,而宏常量中没有数据类型,编译器可以对const常量进行安全检查。
相关文档:
C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. fgetc函数
fgetc函数的功能是从流中读取字符,其用法是:int fgetc(FILE *stream); 程序例子如下:
#include <string.h ......
C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. gcvt函数
gcvt函数的功能是把浮点数转换成字符串,其用法是:char *gcvt(double value, int ndigit, char *buf);程序 ......
C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. harderr函数
harderr函数的功能是建立一个硬件错误处理程序,其用法是:void harderr(int (*fptr)());程序例子如下:
#include <stdio.h>
......
#ifndef _PPC_BOOT_STRING_H_
#define _PPC_BOOT_STRING_H_
#include <stddef.h>
extern char *strcpy(char *dest, const char *src);
extern char *strncpy(char *dest, const char *src, size_t n);
extern char *strcat(char *dest, const char *src);
extern int strcmp(const char *s1, const cha ......
神乎其技,惟C程序,功到自成,十大建议!
1、汝应频繁催动lint工具,据其语法声明修习内力,此事皆因lint之思虑决断实远在君上。
2、不可依随NULL指针,如若不然,混沌痴颠必俟君于彼岸。
3、纵有天赋大智慧,知晓其事无碍,汝亦当尽数强制挪移函数参数为原型所期之数据类型,以免一 ......