定义变量时无引号,单引号,双引号区别与特点:

a=192
a=192-$a
b=‘192-$a‘
c="192-$a"

echo "a=$a"
echo "b=$b"
echo "c=$c"

输出结果如下:

a=192-192
b=192-$a
c=192-192-192

第一种定义a变量的方式是不加任何引号直接定义变量的内容,当内容为简单连续的数字、字符串、路径名时,可以这样用。
第二种定义b变量的方式是通过单引号定义。这种方式的特点是:输出变量内容时单引号里是什么就输出什么,即使内容中有变量和命令(命令需要反引起来)也会把它们原样输出。这种方式比较适合于定义显示纯字符串的情况,即不希望解析变量、命令等场景。
第三种定义c变量的方式是通过双引号定义变量。这种定义的方式特点是:输出变量内容时引号的变量及命令会经过解析后再输出内容,而不是把双引号的变量名及命令(命令需要反引起来)原样输出。这种方式比较适合于字符串中附带有变量及命令且想将其解析后再输出的变量定义。

定义变量经验:
数字内容的变量定义可以不加引号,其他没有特别要求的字符串等定义最好都加上双引号,如果真的需要原样输出就加单引号,定义变量加双引号是最常见的使用场景。

原文地址:https://www.cnblogs.com/liang545621/p/8185637.html

时间: 2024-10-11 20:40:54

定义变量时无引号,单引号,双引号区别与特点:的相关文章

调用js函数时,参数带单、双引号怎么解决?

单引号    ' ----------> ' 例子: 这是一个 html 节点属性值中使用到  ' 仍然是用来表示 ' 实体 onchange="javascript:setTimeout('abc(\'a\',\'\')', 0)" 等价于 onchange="javascript:setTimeout('abc(\'a\',\'\')', 0)" 除html/xml中表示单引号外, 在某些情况为了防止数据库注入等安全问题. 双引号    " --

【python】字符串变量赋值时字符串可用单或双引号

1 >>> name='萧峰' 2 >>> print(name) 3 萧峰 4 >>> name="独孤求败" 5 >>> print(name) 6 独孤求败 7 >>>

定义变量时未初始化赋值的问题

变量定义时未初始化,导致生命周期结束后,重新定义变量时,仍然保存有之前的数据,或者数据为内存中的随机值. 如下代码: #include <iostream> using namespace std; typedef struct s_xy { int x; int y; } s_xy; int main() { // your code goes here for(int i = 0; i < 3; ++i) { s_xy point; volatile int num; if(1 ==

JAVA时的单引号和双引号及String和char的区别

单引号引的数据 是char类型的双引号引的数据 是String类型的单引号只能引一个字符而双引号可以引0个及其以上 *************** char定义时用单引号,只能有一个字母,数字.char c='c';而String用双引号,可以是一个,也可能是多个字母,汉字等.就是所谓的字符串.String s="adsaf";char只是一个基本类型,而String 是一个类,可以直接引用.比如char c='c';不能直接对c调用方法.String s="abc"

Python 基础 (单、双引号区别) 不断补充

最近开始学习Python ,一些小细节的东西不是很理解,所以就记录一下,方便自己以后查看. 我的Python环境: Mac pro 10.12.3,Python3.5 ,Pycharm 多句题外话:公司的同事都是Windows开发Python,然后在使用Linux进行配置,由于Mac上默认是python2.7.10的版本,要想开发Python还得需要在Mac多装一个版本的Python,当然也可以用Python自带的进行开发.由于我使用Python3.5.0,所以踩了许多坑,重点是设置环境变量的时

IFS变量对加双引号和不加双引号变量的区别对待

1. IFS(Internal Field Seprator) 变量 IFS变量是一个特殊的环境变量,叫做内部域分隔符.IFS环境变量定义了bash shell用作字段分隔符的一系列字符.如果bash shell在数据中看到了这些字符中的任意一个,它就会假定这表明了列表中一个新数据字段的开始. 2. IFS对待未加双引号的变量 比如在Shell中输入以下代码: IFS=: _str_="hello:world" for i in $_str_; do echo $i; done 会得到

Shell中的单引号(‘)双引号(”)和反引号(&#183;)

在bash中,$.*.?.[.].'.".`.\.有特殊的含义.类似于编译器的预编译过程,bash在扫描命令行的过程中,会在文本层次上,优先解释所有的特殊字符,之后对转换完成的新命令行,进行内核的系统调用. 其中,反引号类似于函数调用,而不仅仅是简单的文本替换及匹配. 命令行中,被单引号引用的部分,其中所有的特殊字符按照普通字符解释: 双引号引用的部分,仅解释$(美元符号).\(\n \t除外).`(反引号),解释后的文本仅按照普通文字处理(同单引号). 反引号相当于命令替换,引用的部分优先执行

对于表单中单双引号问题

1.表单中录入单双引号,将内容通过post传入到后台后,将数据进行转义存入数据库 foreach($_POST as $k => $v){ $_POST[$k] = addcslashes($v,"'\""); } 2.从数据库中取出来显示到页面中,例如那种修改页面的显示,value=“”这样单双引号又是问题,处理如下 value="<?php echo str_replace('"', '"', str_replace("

python脚本中单引号’ 双引号“ 三个单引号‘’‘ 三个双引号”“” 差别 及反斜杠的用法

直接说结果,然后去理解 双引号内不用加反斜杠 单引号内必须加反斜杠 三单引号输入换行需要加单引号 三双引号最为完美,换行转义什么都不用加 参考:python3中单引号,双引号,三个单引号 ,三个双引号的差别,以及反斜杠的用法python单引号(').双引号(").三引号(''',""")Python中单引号,双引号,3个单引号及3个双引号的区别 原文地址:http://blog.51cto.com/weiruoyu/2333560