c语言头文件,这句话的意思
来源:百度知道 编辑:UC知道 时间:2024/06/19 08:15:02
#ifndef _STDIO_H_
#define _STDIO_H_
一般都是#define max 100
定义max为100
这里的#define _STDIO_H_ 怎么后面什么也没有??
标号是在程序中标定位置使用的,这里呢???
label:
printf("hello, world!\n");
goto label;
#define _STDIO_H_
一般都是#define max 100
定义max为100
这里的#define _STDIO_H_ 怎么后面什么也没有??
标号是在程序中标定位置使用的,这里呢???
label:
printf("hello, world!\n");
goto label;
这个是编译预处理,不是真正的为了定义什么,而是为了避免重复定义某些内容。
比如
#ifndef _STDIO_H_
#define _STDIO_H_
这里是要保护的内容
#enif
如果是第一次包含这个文件的时候_STDIO_H_是未定义的,所以后面的内容会被展开,而第二次包含这个文件的时候因为_STDIO_H_已经被定义过了,所以后面的内容就会被跳过,不会被展开。
这样当你重复的包含这个文件的时候,被保护的内容只会被展开一次,这样就防止的重复定义。
如果没定义 _STDIO_H_ 标号
那么就定义 _STDIO_H_ 标号
一般是避免重复定义
是预处理 一般定义一个标号为真
#define aaa
#ifdefine aaa //为真
#ifndef aaa//为假
当然也可以这样
#define aaa 1
#ifdefine aaa //为真