定义在头文件中的const变量

定义在头文件中的const变量,第1张

C++中const默认为定义他的文件的局部变量,而C中认为是extern的量。

但是在c中若constint X = 10把“=10”去掉。

那也可以编译成功了,因为这些定义都是弱符号,C语言可以支持多个弱符号。

例如:

C/C++code

/* headerer.h */

#ifndef HEADER_H_

#define HEADER_H_

#include <stdio.h>

const int X = 10

void func1(void)

void func2(void)

#endif

C/C++ code

/* file1.c */

#include "headerer.h"

void func1(void)

{

printf("This is file1. X =%d\n", X)

return

}

C/C++ code

/* file2.c */

#include "headerer.h"

void func2(void)

{

printf("This is file2. X =%d\n", X)

return

}

C/C++ code

/* main.c */

#include "headerer.h"

int main()

{

printf("This is main. X =%d\n", X)

func1()

func2()

return 0

}

一、区别如下:

1、int定义的量是变量,它的值可以更改;而const int 定义的是一个常量,它的值不可以更改。

2、int在定义的时候,不需要初始化,而const int 在定义的时候必须初始化;

二、const的作用:把对象转换成一个常量

拓展资料

const与define。两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一些。#define只是简单的文本替换,除了可以定义常量外,还可以用来定义一些简单的函数,有点类似内联函数(Inline)。const和define定义的常量可以放在头文件里面。

参考资料:百度百科:CONST


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7928371.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存