zoukankan      html  css  js  c++  java
  • [C++基本语法:从菜鸟变成大佬系列,就像1,2,3那么简单](三):C++的定义变量

    变量定义类型

    类型 含义
    bool 存储值为true或false
    char 通常为单个八位字节(一个字节)。这是一个整数类型
    int 机器最自然的整数大小
    float 单精度浮点值
    double 双精度浮点值
    void 表示类型缺失
    wchar_t 广泛的字符类型。
    long long 是64位有符号长整型类型

    C++中的变量定义
    变量定义告诉编译器为变量创建的存储位置和容量。变量定义指定数据类型,并包含该类型的一个或多个变量的列表,如下所示

    1 type variable_list;
    View Code

    此处,类型必须是有效的 C++ 数据类型,包括字符、w_char、int、float、double、bool 或任何用户定义的对象等,并且variable_list可以包含一个或多个用逗号分隔的标识符名称。此处显示了一些有效的声明 

    1 int    i, j, k;
    2 char   c, ch;
    3 float  f, salary;
    4 double d;
    View Code

    在这一行int i, j, k;声明和定义变量 i、j 和 k;指示编译器创建名为 int 类型的 i、j 和 k 的变量。

    可以在变量的声明中初始化变量(分配初始值)。初始化程序由等号后跟一个常量表达式组成,如下所示 

    1 type variable_name = value;
    View Code

    这是一个例子

    1 extern int d = 3, f = 5;    //对d和f的声明 
    2 int d = 3, f = 5;           //对d和f的类型数值的初始化,d=3,f=5
    3 byte z = 22;                //对z的类型定义的初始化,使z=22个字节
    4 char x = 'x';               //对z的类型定义的初始化,使x=x的ASCII码值58
    View Code

    对于没有初始化程序的定义:具有静态存储持续时间的变量用 NULL 隐式初始化(所有返回值为 0);所有其他变量的初始值未定义

    C ++中的变量声明

    变量声明为编译器提供了保证,即存在一个具有给定类型和名称的变量,以便编译器继续进行进一步编译,而无需完整的变量详细信息。变量声明仅在编译时有意义,编译器在链接程序时需要实际的变量定义。

    当您使用多个文件并在链接程序时可用的其中一个文件中定义变量时,变量声明很有用。您将使用extern关键字在任何地方声明变量。虽然您可以在C ++程序中多次声明变量,但它只能在文件,函数或代码块中定义一次。

    尝试以下示例,其中变量已在顶部声明,但已在主函数内定义

     1 #include <iostream>
     2 using namespace std;
     3 
     4 //变量声明:
     5 extern int a, b;
     6 extern int c;
     7 extern float f;
     8   
     9 int main () {
    10    // 变量声明:
    11    int a, b;
    12    int c;
    13    float f;
    14  
    15    // 真正的定义
    16    a = 10;
    17    b = 20;
    18    c = a + b;
    19  
    20    cout << c << endl ;
    21 
    22    f = 70.0/3.0;
    23    cout << f << endl ;
    24  
    25    return 0;
    26 }
    View Code

    编译并执行上述代码时,会产生以下结果

    1 30
    2 23.3333
    View Code

    相同的概念适用于函数声明,其中您在声明时提供函数名称,并且可以在其他任何位置给出其实际定义。例如 

     1 // 变量声明
     2 int func();
     3 int main() {
     4    // function call
     5    int i = func();
     6 }
     7 
     8 // 函数定义
     9 int func() {
    10    return 0;
    11 }
    View Code

     For English vistors, please click here

  • 相关阅读:
    input文本框加入xwebkitspeech实现语音输入功能
    获取textarea的光标位置
    初学者使用Application Cache指南
    一个封装了localStorage的增删改查的方法
    video from html5
    Asynchronous Method Invocation
    consume an asp.net webservice(upload a file to server) from java via soap
    INFO:VB/VBA (Long) 的转换自动化错误
    : 使用SAAJ发送和接收SOAP消息
    how to design a hardware service use .net remoting
  • 原文地址:https://www.cnblogs.com/ssf-lrk/p/11225183.html
Copyright © 2011-2022 走看看