精华内容
下载资源
问答
  • PHP 常量与变量

    千次阅读 2015-06-25 06:52:27
    常量】  可以用 define() 函数来定义常量,在 PHP 5.3.0 以后,可以使用 const 关键字在类定义之外定义常量。一个常量一旦被定义,就不能再改变或者取消定义。   常量只能包含标量数据(boolean,integer,...
    【常量】
          可以用 define() 函数来定义常量,在 PHP 5.3.0 以后,可以使用 const 关键字在类定义之外定义常量。一个常量一旦被定义,就不能再改变或者取消定义。 
          常量只能包含标量数据(boolean,integer,float 和 string)。可以定义 resource 常量,但应尽量避免,因为会造成不可预料的结果。 
          可以简单的通过指定其名字来取得常量的值,与变量不同,不应该在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数 constant() 来获取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。 
    如果只想检查是否定义了某常量,用 defined() 函数。 
    常量和变量有如下不同: 
    ◦  常量前面没有美元符号($);  
    ◦  常量只能用 define() 函数定义,而不能通过赋值语句;  
    ◦  常量可以不用理会变量的作用域而在任何地方定义和访问;  
    ◦  常量一旦定义就不能被重新定义或者取消定义;  
    ◦  常量的值只能是标量。 
    预定义常量

          很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。这些特殊的常量不区分大小写,如下:  

    名称说明
    __LINE__文件中的当前行号。
    __FILE__文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径),而在此之前的版本有时会包含一个相对路径。
    __DIR__文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。它等价于 dirname(__FILE__)。除非是根目录,否则目录中名不包括末尾的斜杠。(PHP 5.3.0中新增) =
    __FUNCTION__函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
    __CLASS__类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。类名包括其被声明的作用区域(例如 Foo\Bar)。注意自 PHP 5.4 起 __CLASS__ 对 trait 也起作用。当用在 trait 方法中时,__CLASS__ 是调用 trait 方法的类的名字。
    __TRAIT__Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4 起此常量返回 trait 被定义时的名字(区分大小写)。Trait 名包括其被声明的作用区域(例如 Foo\Bar)。
    __METHOD__类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
    __NAMESPACE__当前命名空间的名称(区分大小写)。此常量是在编译时定义的(PHP 5.3.0 新增)。
    【变量】
          PHP 中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。 变量名与 PHP 中其它的标签一样遵循相同的规则。一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。
          变量默认总是传值赋值。那也就是说,当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋值到目标变量。这意味着,例如,当一个变量的值赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量。PHP 也提供了另外一种方式给变量赋值:引用赋值。这意味着新的变量简单的引用(换言之,"成为其别名" 或者 "指向")了原始变量。改动新的变量将影响到原始变量,反之亦然。使用引用赋值,简单地将一个 & 符号加到将要赋值的变量前(源变量)。
    预定义变量
          PHP 4.2.0 以及后续版本中,PHP 指令 register_globals 的默认值为 off。这是 PHP 的一个主要变化。让 register_globals 的值为 off 将影响到预定义变量集在全局范围内的有效性。例如,为了得到 DOCUMENT_ROOT 的值,将必须使用                 $_SERVER['DOCUMENT_ROOT'] 代替 $DOCUMENT_ROOT,又如,使用 $_GET['id'] 来代替 $id 从 URL http://www.example.com/test.php?id=3 中获取 id 值,亦或使用 $_ENV['HOME'] 来代替 $HOME 获取环境变量 HOME 的值。 
    •超全局变量 — 超全局变量是在全部作用域中始终可用的内置变量
    •$GLOBALS — 引用全局作用域中可用的全部变量
    •$_SERVER — 服务器和执行环境信息
    •$_GET — HTTP GET 变量
    •$_POST — HTTP POST 变量
    •$_FILES — HTTP 文件上传变量
    •$_REQUEST — HTTP Request 变量
    •$_SESSION — Session 变量
    •$_ENV — 环境变量
    •$_COOKIE — HTTP Cookies
    •$php_errormsg — 前一个错误信息
    •$HTTP_RAW_POST_DATA — 原生POST数据
    •$http_response_header — HTTP 响应头
    •$argc — 传递给脚本的参数数目
    •$argv — 传递给脚本的参数数组

    global 关键字
          PHP 的全局变量和 C 语言有一点点不同,在 C 语言中,全局变量在函数中自动生效,除非被局部变量覆盖。这可能引起一些问题,有些人可能不小心就改变了一个全局变量。PHP 中全局变量在函数中使用时必须声明为 global或者用特殊的 PHP 自定义 $GLOBALS 数组。$GLOBALS 是一个关联数组,每一个变量为一个元素,键名对应变量名,值对应变量的内容。$GLOBALS 之所以在全局范围内存在,是因为 $GLOBALS 是一个超全局变量。
    静态变量
          变量范围的另一个重要特性是静态变量(static variable)。
    可变变量
          有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置。
    要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,解析器需要知道是想要 $a[1] 作为一个变量呢,还是想要 $$a 作为一个变量并取出该变量中索引为 [1] 的值。解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。

    <?php
    	// 常量,忽略大小写
    	define(INVALIDE_VALUE, 12, true);
    	echo INVALIDE_VALUE."<br>";
    	echo invalide_value."<br>";	
    	if(defined("INVALIDE_VALUE"))
    	{
    		echo "INVALIDE_VALUE 已经定义".__LINE__."<br>";;
    	}
    	
    	// 变量
    	$str1 = 'str1';
    	$str2 = & $str1;  // 引用	 
    	$str1 = "Changed $str1";
    	echo $str1."<br>";
    	echo $str2."<br>";	
    	
    	echo $_SERVER['DOCUMENT_ROOT']."<br>"; // 预定义变量
    	
    	$gVal = 13;
    	function Test() // 全局变量
    	{
    		global $gVal;
    		echo $gVal."<br>";
    		echo $GLOBALS['gVal']."<br>";
    	}
    	Test();
    	
    	function test1()
    	{
        	static $a = 0; // 静态变量
        	echo $a;
        	$a++;
    	}
    	
    	// 可变变量
    	class foo {
        var $bar = 'I am bar.';
        var $arr = array('I am A.', 'I am B.', 'I am C.');
        var $r   = 'I am r.';
    	}
    
    	$foo = new foo();
    	$bar = 'bar';
    	$baz = array('foo', 'bar', 'baz', 'quux');
    	echo $foo->$bar ."<br>";
    	echo $foo->$baz[1]  ."<br>";
    
    	$start = 'b';
    	$end   = 'ar';
    	echo $foo->{$start . $end}  ."<br>";
    
    	$arr = 'arr';
    	echo $foo->$arr[1] ."<br>";
    	echo $foo->{$arr}[1]  ."<br>";	
    ?>
    








    展开全文
  • 常量变量的总结

    千次阅读 2017-03-30 17:47:57
    常量与变量  任何一个C语言程序中处理的数据,无论是什么类型,都是以常量变量的形式出现的,在程序设计中,常量可以作说明而直接引用,但是变量应遵循“先定义,后使用;先赋值,后引用”的原则。 常量 是指在...

    常量与变量

          任何一个C语言程序中处理的数据,无论是什么类型,都是以常量或变量的形式出现的,在程序设计中,常量可以作说明而直接引用,但是变量应遵循“先定义,后使用;先赋值,后引用”的原则。


    常量

    是指在程序运行中其值不能改变的量.常量可以直接写在程序中,按其表现形式分为直接常量和符号常量。


    直接常量:

    在程序中不需要任何说明就可直接使用的常量。按数据类型可以分为整型常量、实型常量、字符常量和字符串常量。

    (1)整型常量:整型常量即数学中的整数,在C语言中的整型常量有3种表示法:十进制数,如100;八进制数,如0123;十六进制数,如0x123。

    (2)实型常量:实型常量又称浮点常量,即数学中含有小数点的实数。在C语言中的实型常量有2种表示方法:十进制小数形2.25;指数形式,如                                 1.25E+002。

    (3)字符常量:字符常量是指用单撇号括起来的单个字符。在C语言中的字符常量有2类,一类是可以显示的字符常量,如'x'、'1';另一类是以反斜杠                           开头的转义字符,如'\n'。               

    (4)字符串常量:字符串常量是指用双撇号括起来的单个或多个字符,如"hello"、"x"。另外,不管字符串是常量还是变量,它最后都有一个字符串结                               标志'\0',所以字符串常量"x"比字符变量'x'的存储空间多一个。


    符号常量:

    符号常量是指用符号表示的常量。用什么符号表示什么常量需要用户自己定义,所以符号常量在使用之前必须先定义。注意这里的定义和变量的定义是有区别的,符号常量的定义只是方便替换,并不涉及到数据类型。定义过后就可以直接引用。其定义的一般形式为:#define  标识符  常量

    例如:

    #define PI 3.1415926

    当程序中遇到PI标识符时,就用常量3.1415926代替。使用符号常量的好处是当需要修改一个数据时,不需要在程序中每个出现这个数据的地方都修改,只需要从定义位置的修改就可以了。


    #include<stdio.h>

    #define PI 3.14

    void main()

    {

        printf("%c",m);

        printf("%c",'m');

        printf("%d",PI);

    }

    在上面这段代码中,由于第一个printf函数的中m是变量没有定义,所以程序编译出错。但第二个printf函数是正确的,因为'm'是一个字符常量,可以直接使用。第三个printf'函数中PI是符号常量,经过预处理定义后就能直接使用,所以在函数体内没有再定义。



    变量

    为了方便管理、引用和存储程序中的数据,所以使用变量来进行各种数据操作。变量在程序运行期间其值可以改变。在C语言中变量有三种必要的属性:数据类型、变量名、变量值。

    变量定义格式:类型说明符  变量名1,变量名2...

    其中类型说明符必须是一个有效的数据类型。

    例如:int  x,y;       //定义了整型变量x,y


    数据类型:

    数据类型决定了数据存储空间的大小和能对数据执行的操作。系统会根据数据类型进行按需分配存储空间,根据数据类型判断数据的操作是否合法,如float变量进行求余运算(%)就会出错。

    c语言的数据类型分为基本类型、构造类型和空类型三大类。

    (1)基本类型:1. 整型:a 基本整型(int)

                                             b 短整型(short int)

                                             c 长整型(long int)

                               2 .实型:a 单精度型(float)

                                             b 双精度型(double)

                               3 .字符型(char)

    (2)构造类型:1 .数组类型

                               2 .结构体类型

                               3 .共用体类型

                               4 .指针类型

    (3)空类型(void)


    变量名:

    数据类型定义了数据的存储空间大小,变量名就是变量在计算机中存储单元的地址符号。通过变量名可以访问该变量。变量的命名必须遵循标识符的命名规则,且保留字不能当作变量名。另外变量的命名尽量增加可读性,能做到顾名思义。例如,变量是存储学生分数的变量,那么就可以命名这个变量为score。


    变量值:

    变量遵循“先赋值,后引用”的规则。赋值可以在变量定义的同时赋初值,也可以在变量定义之后赋值。注意不能给数组整体赋值,如数组变量str="abcd"。但可以给数组初始化,如char str[]="abcd"。

    如果没有给变量赋初值,会怎样?

    当该变量是静态存储类型的变量时,系统编译时会自动赋初值0;

    当该变量是动态存储类型的变量时,在没有赋初值的情况下,将会有一个不确定的值充当其初始值。这是非常危险的,尤其是对一个不确定的指针来说,修改它所指向存储单元的值可能会造成巨大的危险,为此一般都要求程序为变量赋予合理的初值。


    定义的变量在程序中是否随处可用?赋值后的变量是否在程序运行期间总能保存其值?这些问题就涉及到了变量的作用域和生存期


    变量的作用域:

    作用域顾名思义的意思就是作用的有效范围,它在什么地方起作用,在什么地方不起作用或者说在什么地方可见在什么地方不可见。变量的作用域由它定义的位置决定。

    变量按作用域可以分为局部变量全局变量

    局部变量:复合语句中定义的变量(作用域只在复合语句内),函数内定义的变量(作用域在这个函数内)。

    全局变量:在函数体外定义的变量。全局只是相对局部而言,全局并不是指整个源程序。全局变量的作用域是从定义的位置开始,到源程序的结束。如                   果要在定义点之前使用全局变量的话就需要使用关键字extern对其作用域进行扩展。

    注意:同一作用域内不允许出现两个相同的变量名,若全局变量和函数体内的局部变量同名,则全局变量在那个函数内会被屏蔽,只有局部变量有效。           全局变量和局部变量尽量不要同名,否则容易出现不易发现的变量调用错误。不同作用域可以出现同名变量,因为它们不会相互影响。


    变量的生存期:

    变量的存在时间称为生存期。变量的生存期取决于变量的存储类别。所谓存储类别是指变量在内存中的存储方式,根据系统为变量分配的存储区域不同,存储方式分为静态存储动态存储

    静态存储:在程序运行期间分配固定的存储空间。是静态存储方式的变量有全局变量和用static关键字声明的变量。静态存储的特点:在编译时分配内                     存空间并进行初始化。在程序运行期间,变量一直存在,直到程序结束,变量对应的内存空间才被释放。

    动态存储:在程序运行期间根据需要动态分配存储空间。是动态存储的变量有局部变量和自动变量等。动态存储的特点:变量所在的函数在开始调用时                  动态分配存储空间,函数调用结束时变量空间被释放。也就是说,函数每次调用,局部变量就会重 新分配空间。如果局部变量没初始化,                    那么变量的值就是随机数。


    局部变量和静态局部变量的区别:

    局部变量属于动态存储方式,只有在定义它的函数被调用时,才分配存储空间,函数调用结束时,释放存储空间。它的作用域是在定义它的函数内,生存期是函数被调用的期间。若局部变量没初始化,则其值将不确定。

    静态局部变量是用static声明的局部变量,它属于静态存储方式。在编译时为其分配存储空间,在程序执行过程中,静态局部变量始终存在,即使定义它的函数调用结束也不释放存储空间。静态局部变量的生存期为整个程序执行期间。静态局部变量的作用域和局部变量的作用域相同,只能在定义它的函数内使用,退出该函数后,尽管静态局部变量的值还存在,但其它函数不能引用。相当于对其它函数不可见。


    #include<stdio.h>
    void fun()
    {
       static int n;  //定义静态局部变量n,系统自动赋初值0
       int a=0;         //定义局部变量a
       a++;n++;
       printf("a=%d,n=%d\n",a,n); 
    }
    void main()
    {  
       fun();
       fun();
    }


    程序运行结果

    a=1,n=1

    a=1,n=2


    全局变量和静态全局变量的区别:

    静态全局变量是全局变量用关键字static声明的变量,静态全局变量和全局变量的作用域相同。不同点是全局变量可以被其它的源文件引用,而静态全局变量只被定义它的源文件独享。这样可以防止当其它源文件包含静态全局变量的源文件时,使用出现混乱。




    展开全文
  • matlab变量与常量、数据类型

    千次阅读 2020-05-25 17:41:02
    变量与常量 变量是任何程序设计语言的基本元素之一。 Matlab 并不要求对所使用的变量进行事先声明,也不需要指定变量类型,Matlab 会自动根据所赋予变量的值或对变量所进行的操作来确定变量的类型。 在赋值过程中,...

    变量与常量

    变量是任何程序设计语言的基本元素之一。
    Matlab 并不要求对所使用的变量进行事先声明,也不需要指定变量类型,Matlab 会自动根据所赋予变量的值或对变量所进行的操作来确定变量的类型。
    在赋值过程中,如果变量已经存在,Matlab 会用新值代替旧值,并以新的变量类型代替旧的变量类型。

    常量名常量值
    i,j虚数单位
    pi圆周率
    inf无穷大
    eps浮点运算相对精度
    nargin输入变量数目
    realmin最小的正浮点数
    realmax最大的正浮点数
    NaN不定值,如0/0
    ans用于结果的缺省变量名
    nargout输出变量数目

    数据类型

    Matlab 数据类型的最大特点是每一种类型都是以数组为基础,Matlab 事实上把每种类型的数据都作为数组来处理。

    Matlab 常用的数据类型有:
    numeric:数值
    char:字符
    logical:逻辑
    cell:单元、细胞、元胞
    struct:结构

    数值型

    数值型数据包括
    整数:带符号和无符号
    浮点数:单精度和双精度

    在缺省(默认)状态下,Matlab 将所有的数都看作是双精度的浮点数。
    使用整型变量和单精度变量可以节约内存空间

    双精度数值变量

    IEEE标准,64位 (占8字节),11指数位,53数值位和一个符号位
    double( ) 函数的转换

    整形数据

    uint8,无符号8位整形数据类型,值域为0至255,常用于图像表示和处理。(节省存储空间,提高处理速度)
    int8( ), int16( ), int32( ),uint16( ), uint32( )
    在这里插入图片描述在这里插入图片描述

    整形数据的运算

    整型数据可以参与的运算有下面两种:
    相同整型数据之间的运算,结果为同类型的整数。
    不同的整型数据之间不能进行运算
    整型数据可以和双精度标量进行数值运算,结果为整数。在运算过程中保持浮点运算精度,最后将结果转换成整型。
    整型数据不能与不是标量的双精度数组进行运算

    最大整数与最小整数

    可以用intmax和intmin函数来查询不同整形所能表示的最大整数和最小整数

    浮点数

    浮点数包括单精度(占4个字节)和双精度(占8个字节),缺省为双精度

    浮点转换函数

    single:将数据转换成单精度浮点数
    double:将数据转换成双精度浮点数
    在这里插入图片描述

    最大浮点数和最小浮点数

    可以用 realmax 和 realmin 函数来查询单精度和双精度所能表示的最大浮点数和最小浮点数。

    复数

    定义复数:
    直接输入法:

    z=3+4i
    

    虚数与虚数单位之间不能留空格

    使用complex函数

    z=complex(3,4)
    

    z=complex(3)等于complex(3,0)

    字符与字符串

    字符与字符串运算是各种高级语言不可缺少的部分,Matlab具有强大的字符处理能力
    字符串必须用单引号括起来

    str1='Matrix Laboratory'
    

    字符串是由多个字符组成的字符行向量

    str2=['M','a','t','r','i','x']
    

    字符数组必须是方的,即每行的字符个数必须相等

    str3=['M','a','t'; 'r','i','x']
    

    字符串中的每个字符(包括空格)都是字符串的一个元素
    在这里插入图片描述 Matlab中字符是以 ASCII 码存储的,因而区分大小写,可用 double 函数查看一个字符的 ASCII 码
    在这里插入图片描述

    字符串的生成

    直接赋值

    str1='Matrix';
    str2='Laboratory';
    str=[str1,str2]
    

    使用 char 函数

    str=char([77,97,116,108,97,98])
    
    str=char(str1,str2)
    

    生成一个字符数组,第一行为 str1,第二行为 str2

    字符串与数值数组

    字符串、字符数组与数值数组之间的转换
    按 ASCII 码转换
    字符数组到数值数组:double
    数值数组到字符串:char

    直接转换数值数组与字符数组
    数值矩阵到字符数组: num2str、int2str、mat2str
    字符数组到数值数组:str2num
    在这里插入图片描述在这里插入图片描述在这里插入图片描述数值数组转换为字符数组后,表面上看象一个数值数组,但此时的元素是字符而不是数字
    在这里插入图片描述double、char 是按 ASCII码 进行转换
    num2str、int2str、mat2str、str2num
    是直接进行转换

    字符串的合并

    水平合并

    1.直接使用中括号

    str1=['hello ', 'world!']
    

    2.使用 strcat 函数

    str2=strcat('hello ','world!')
    

    使用 strcat 时,自动去除原字符串结尾处的空格
    水平合并得到的是一个更长的字符串

    垂直合并

    1.直接使用中括号

    str3=['Matrix    '; 'Laboratory']
    

    2.使用 strvcat 函数

    str4=strvcat('Matrix','Laboratory')
    

    在中括号中用分号实现垂直合并,必须保证每个字符串的长度相等,否则需用空格补齐
    用 strvcat 合并,自动为较短的字符串补充空格
    垂直合并得到的是一个字符数组

    运行字符串

    运行字符串所表示的表达式或命令: eval
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

    字符串相关函数
    strcmp比较字符串
    strcmpi忽略大小写比较字符串
    upper转换为大写
    blanks产生空字符串
    strmatch查找匹配的字符串
    strjust对其字符数组,包括左对其,右对齐和居中
    strrep替换字符串
    strncmp比较字符串的前n个字符
    lower转换为小写
    deblank删除字符串中的空格
    findstr在一个字符串中查找另一个字符串
    strtok返回字符串中第一个分割符(空格,回车和Tab键)前的部分

    细胞数组

    Matlab 从 5.0 版开始引入了一种新的数据类型 — 细胞 ( cell ),该结构可以把不同类型的数据纳入到一个变量中。
    普通数组中的每个元素都必须具有相同的数据类型,而细胞则没有此要求。
    细胞变量的表示方法类似于带有下标的数组,但这些下标不是用圆括号括起来,而是使用大括号
    在这里插入图片描述

    细胞数组的定义

    用赋值语句直接定义

    A=[1 2; 3 4]; str='Matlab';
    M={1:4, A, str}; celldisp(M)
    

    用 cell 函数预先分配存储空间,然后对细胞的每个元素逐个赋值。

    cell(m,n)
    

    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

    相关函数
    celldisp输出细胞变量的内容
    cellplot用图形方式显示细胞变量
    iscell判别一个变量是否是细胞变量

    在这里插入图片描述在这里插入图片描述

    展开全文
  • 日期和时间 &常量变量

    千次阅读 2019-11-18 20:41:35
    常量变量 在MATLAB中,用inf或INF表示无穷大。MATLAB允许的最大数是2 1024 ,超过这个数,就被认为是无穷大。例如,在命令行窗口输入1/0,则显示警告信息,返回值为无穷大inf。 系统默认的常量常量...

    MATLAB程序加不加分号?

    语句结尾加分号时,运行结果在命令窗口不显示;
    不加分号时,当点击回车时,运行结果就会立即显示出来。

    运行matlab程序的时候,程序中变量的值会自动储存在 workspace中。程序命令后面输入与不输入“;”的区别是,当输入半角的分号时,命令中的变量会自动列表储存在 workspace中,变量的值不会在window command中显示出来;当不输入半角的分号时,变量不仅也会自动储存在workspace中,还会在window command窗口中显示出变量的值。

    日期和时间

    在MATLAB中,有很多处理日期和时间的函数。

    函数说明
    clock()当前时间,返回日期的向量
    now()双精度表示当前的日期和时间
    date()当前日期
    weekday()星期几,返回值包括星期的数字和星期的字符串
    eomday()返回一个月的最后一天
    calendar()返回日历
    datestr()向量转化为日期字符串
    datenum()日期字符串和日期向量转化为数字
    datevec()将日期数字和字符串转化为日期向量
    a=clock		%当前日期的向量		1.0e+03 *2.0190    0.0110    0.0180    0.0200    0.0430    0.0562
    b=date		%当前日期的字符串		'18-Nov-2019'
    c=now		%双精度表示的当前日期		7.3775e+05
    d='18-Nov-2019'
    calendar(d)			%返回日历
    calendar(2020,1)	%返回指定时间的日历
    
    t1=datestr(now)					%返回当前日期和时间字符串
    t2=datestr(now,'dd-mmm-yyyy')	%返回当前日期的固定格式
    t3=datestr(now,1)				%和上面一样
    t4=datestr(now,'HH:MM:SS')		%返回当前时间
    t5=datestr(now,13)				%和上面一样
    

    日期和时间的格式转换

    函数说明
    tic/toc函数tic启动秒表,toc停止秒表,计算函数或程序运行时间
    cputime返回用秒表示的、从当前MATLAB启动之后所用的CPU时间,单位为s
    etime(t1,t0)返回参数和之间的时间,单位为s
    tic
    for i=5:12
        a=inv(pascal(i));		%获取帕斯卡矩阵的逆矩阵
        t(i-4)=toc;
    end
    figure;
    plot(5:12,t);
    xlabel('阶数');
    ylabel('时间/秒');
    

    运行结果:
    在这里插入图片描述

    t=clock
    for i=1:1000			%采用循环
        v(i)=exp(i);
    end
    t1=etime(clock,t)		%进行计时
    clear all;
    t=clock
    i=1:1000;				%采用矢量
    y(i)=exp(i);
    t2=etime(clock,t)		%进行计时
    
    运行结果:
    t =
    
       1.0e+03 *
    
        2.0190    0.0110    0.0190    0.0170    0.0370    0.0181
    
    
    t1 =
    
        0.0030
    
    
    t =
    
       1.0e+03 *
    
        2.0190    0.0110    0.0190    0.0170    0.0370    0.0181
    
    
    t2 =
    
       1.0000e-03
    
    t=cputime
    i=1:1000000
    y(i)=exp(i);
    t1=cputime-t
    

    常量和变量

    在MATLAB中,用inf或INF表示无穷大。MATLAB允许的最大数是21024,超过这个数,就被认为是无穷大。例如,在命令行窗口输入1/0,则显示警告信息,返回值为无穷大inf。
    系统默认的常量:

    常量说明
    ANS或ans默认变量名,保存最后一次运算的结果
    pi圆周率
    INF或inf无穷大
    NaN或nan0/0
    realmax最大的正实数
    realmin最小的正实数
    eps浮点数的相对误差
    i或j复数单位,-1的平方根
    nargin函数的输入参数个数
    nargout函数的输出参数个数
    varargin可变的函数的输入参数个数
    varargout可变的函数的输出参数个数
    beep使计算机发出“嘟嘟”声

    变量命名规则:

    1. 变量名长度不超过31个字符,超过的字符系统忽略不计;
    2. 变量名区分大小写;
    3. 变量名必须以字母开头,变量名可以包含字母、数字、下划线。
    展开全文
  • 变量常量 的区别

    2016-07-05 12:35:46
    变量之所以重要,是因为变量是编程语言中数据的符号标识和载体。变量是内存或寄存器中用一个标识符命名的存储单元,可以用来存储一个特定类型的数据,并且数据的值在程序运行过程中可以进行修改。可见,变量首先是一...
  • Java 中变量与常量的生命周期

    千次阅读 2017-12-28 14:23:00
    今天在复习视频的时候看到了内部类中,关于定义...有同学提出疑惑,于是老师说到了栈内存以及内部变量常量的生命周期问题。 之前也提到过很多次关于这个“生命周期”的问题,于是就想到了写篇东西整理一下。
  • Kotlin系列之变量常量

    千次阅读 2018-02-09 11:17:11
    变量 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 属性&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; varval区别 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 自定
  • java中静态变量常量的使用

    千次阅读 2018-07-18 22:36:20
     相对应得程序运行中需要改变的量就定义成静态变量,需要注意的是如果是多处引用了此静态变量,那么一旦改变各处的引用都会改变。可能会引起问题,需要注意。 稍微深层次理解:常量存在于方法区的常量区,类没...
  • 储存已加载的类信息、常量、静态变量、即时编译器编译后的代码等数据; 2、常量池:编译器生成的各种字面量和符号引用; 3、关于字符串常量池和运行时常量池的位置说明: jdk1.6 存在永久代,字符串常量池、运行时...
  • [JAVA] Java 中变量与常量的生命周期

    千次阅读 2014-07-04 01:08:59
    今天在复习视频的时候看到了内部类中,关于定义...有同学提出疑惑,于是老师说到了栈内存以及内部变量常量的生命周期问题。 之前也提到过很多次关于这个“生命周期”的问题,于是就想到了写篇东西整理一下。 首先
  • 常量变量相对的概念。常量值不能改变,变量值能改变。 变量代表一块内存。 变量可以在三个地方定义。 使用 #define  标识符 常量数据 定义常量。 ...
  • java中变量常量的生命周期(待完善) 首先解释一下变量常量的概念: 变量是内存中开辟的一块存储区域,用于记录和存储不断变化的数据的值。 变量有固定的定义格式,当我们在进行运算和...
  • 变量-常量-表达式 变量初始化变量PHP 中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。变量 PHP 中其它的标签一样遵循相同的规则。一个有效的变量名由字母或者下划线开头,后面跟上任意...
  • C/C++定义全局变量/常量几种方法的…

    万次阅读 多人点赞 2017-11-03 14:23:02
    在讨论全局变量之前我们先要明白几个基本的概念: 1. 编译单元(模块):   在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译...
  • C/C++ 定义全局变量/常量几种方法

    千次阅读 2015-01-11 10:37:24
    在讨论全局变量之前我们先要明白几个基本的概念: 1. 编译单元(模块):  在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR),因为它不像编译...
  • 摘要:使用全局变量最稳妥的方法,就是在common.h中声明,在common.cpp中定义;其他文件include “common.h”来使用全局变量 在讨论全局变量之前我们先要明白几个基本的概念: 1. 编译单元(模块):  在IDE开发工具...
  • JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都是很痛苦的事情,但是程序...
  • 字符串常量池、class常量池和运行时常量

    万次阅读 多人点赞 2017-06-12 20:09:36
    在java的内存分配中,经常听到很多关于常量池的描述,我开始看的时候也是看的很模糊,网上五花八门的说法简直太多了,最后查阅各种资料,终于算是差不多理清了,很多网上说法都有问题,笔者尝试着...
  • 在讨论全局变量之前我们先要明白几个基本的概念:原文章地址:https://www.cnblogs.com/wanghetao/p/4492582.html1. 编译单元(模块): 在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多...
  • Scala的语言相对来说还是比较复杂的,所以我打算将Scala拆分成两部分来说,第一部分是传统的C类语言的结构,类,函数变量,控制语句,第二部分是Scala其他C类语言不通的地方及特点,这样的好处是可以让大家迅速...
  • php魔术方法魔术变量、内置方法内置变量
  • 局部变量和全局变量的区别

    千次阅读 2017-03-05 18:17:45
    局部变量是指在程序中,只在特定过程或函数中可以访问的变量,是相对全局变量而言的。 3、特点及区别 在C等面向过程语言中,局部变量可以和全局变量重名,但是局部变量会屏蔽全局变量。在函数内引用这个变量时,会...
  • 可变变量 就是在变量名的前面加上$,里面变量的值作为变量的名字 引用变量 就相当于给变量起了...如果unset的变量被另一个变量引用,那么这个unset掉的变量不会释放内存,只是销毁了变量的名 常量 常量是单个值...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 76,755
精华内容 30,702
关键字:

常量与变量是相对存在