C++——变量的声明、定义

原创 2012年03月22日 10:08:50

C++——变量的声明、定义与初始化


一、变量的声明(declaration)

声明用于向程序表明变量的类型和名字。声明跟定义的不同之处是在前面加了extern修饰符。如下:

extern int i; // 声明变量i为int类型,但是没有分配存储空间。

二、变量的定义

定义用于为变量分配存储空间。定义也是声明,因为定义变量时声明了它的类型和名字。

int i;

定义的变量的同时可以初始化

int i = 10;

三、声明变量时初始化

声明变量时如果加上初始化语句,那么就是定义而不仅仅是声明。

extern int i = 5; // 定义。虽然有extern修饰符,但是也有初始化,所以是定义,而不仅仅是声明。

四、可以重复声明变量,但是不能重复的定义变量

这很好理解。声明没有分配存储空间,定义分配了存储空间。如果重复定义,那么一个变量就具有多个存储空间。访问变量的时候,就不知道要访问哪个存储空间了。

int i;       // 定义
extern i; // OK。声明
int i;       // Error。重复定义

extern double d = 10.5;  // 定义
extern double;             // OK。声明
extern double d = 5.0;  // Errro。重复定义


C++中变量的声明和定义的详解

1.概念:    变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。    声明用于向程序表明变量的类型和名字。定义也是声明:当定义变量时我们声明了它的类型...

C++变量的声明与定义

①变量定义:用于为变量分配存储空间,还可为变量指定初始值。程序中,变量有且仅有一个定义。 ②变量声明:用于向程序表明变量的类型和名字。 ③定义也是声明:当定义变量时我们声明了它的类型和名字。 ④...

C++全局变量的声明与定义的详解

注:本文章转自> http://www.jb51.net/article/37628.htm 1. 编译单元(模块)在VC或VS上编写完代码,点击编译按钮准备生成exe文件时,编译器做了两步工作: ...

C/C++ 变量声明和定义的区别 静态变量的作用

变量声明和定义的区别 :在学习C/C++的过程中容易混淆变量的声明和定义,先将他们的区别总结如下:...

C++全局变量的声明和定义

(1)编译单元(模块)     在VC或VS上编写完代码,点击编译按钮准备生成exe文件时,编译器做了两步工作: 第一步,将每个.cpp(.c)和相应的.h文件编译成obj文件; 第二步,将工程...
  • educast
  • educast
  • 2013年04月08日 23:06
  • 512

C/C++头文件与变量的声明和定义

C/C++头文件与变量的声明和定义最近遇到了变量重复包含的问题,才发现自己有好多知识已经模糊了,真惭愧。首先说下头文件,其实头文件对计算机而言没什么作用,她只是在预编译时在#include的地方展开一...
  • mountzf
  • mountzf
  • 2016年06月27日 11:20
  • 4436

C++全局变量的声明和定义

原文来自:http://blog.csdn.net/candyliuxj/article/details/7853938 (1)编译单元(模块)     在VC或VS上编写完代码,点击编译按钮准备...

C++头文件保护符和变量的声明定义

#ifndef #define #endif头文件保护符和变量的声明和定义,有例子有真相。

关于C++变量的声明和定义

我们已经知道,一个函数一般由两部分组成:声明部分和执行语句。   声明部分的作用是对有关的标识符(如变量、函数、结构体、共用体等)的属性进行说明。对于函数,声明和定义的区别是明显的,前边已说明,函...

C++函数和变量的声明、定义的原因和作用

声明是告诉编译器一些信息,以协助编译器进行语法分析,避免编译器报错。而定义是告诉编译器生成一些代码,并且这些代码将由连接器使用。即:声明是给编译器用的,定义是给连接器用的。这个说明显得很模糊,为什么非...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++——变量的声明、定义
举报原因:
原因补充:

(最多只允许输入30个字)