-
单引号和双引号
2017-02-08 14:47:03单引号 和 双引号首先看下面一段程序:
#include <stdio.h> int main() { char* p1 = 1 ; char* p2 = '1'; char* p3 = "1"; printf("%s, %s, %s", p1, p2, p3); printf('\n'); printf("\n"); return 0; }
上面的程序会出现段错误,因为p1和p2两个指针指向的位置是错误的。p1指向的是内存地址为1的位置,p2指向的是内存地址为字符‘1’的ASC码49的位置,这两个指针都指向较低的地址位,是野指针,这些地址是系统保留的不能使用。只有指针p3的用法是正确的。
而且printf(‘\n’);的用法也是错误的,print第一个参数是指针,相当于给一个指针赋值,打印‘\n’的ASC码10地址的内容,这个地址是系统保留不能访问的。C语言中的单引号用来表示字符常量,通常单引号传递的是ASC码数值。
C语言中的双引号用来表示字符串常量,通常双引号传递的是存储该内容的地址值。举一个例子:
#include <stdio.h> int main() { char c = " "; while( c=="\t" || c==" " || c=="\n" ) { scanf("%c", &c); } return 0; }
这段代码的本意是将键盘输入的值与三个值进行比较当不是这三个时就退出,但是由于定义的c是字符变量,不是字符串,导致了程序的功能错误。char c = ” “;的含义是将“ ”字符串的地址赋值给c,但是地址是32位,c是1个字节8位,于是地址的低8位赋值给c,这样c跟三个值都不相等,程序运行后立刻退出。可以把双引号全部变为单引号。
小结
本质上单引号括起来的一个字符代表整数
双引号括起来的字符代表一个指针,是一个地址
C编译器接受字符和字符串的比较,可意义是错误的
C编译器允许字符串对字符变量赋值,其意义是可笑的 -
python中的单引号和双引号有什么区别_python中单引号和双引号有什么区别
2020-12-11 11:52:59单引号和双引号在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如str1='python'str2="python"str1和str2是没有任何区别的。但是如果遇到需要转义字符的情况,来看单引号和双引号的版本。python学习...单引号和双引号
在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如str1 = 'python'
str2 = "python"
str1和str2是没有任何区别的。但是如果遇到需要转义字符的情况,来看单引号和双引号的版本。
python学习网,大量的免费python视频教程,欢迎在线学习!
单引号str3 = 'We all know that \'A\' and \'B\' are two capital letters.'
双引号str4 = "We all know that 'A' and 'B' are two capital letters."
单引号需要加 '\' 来让编译器判断目前是转义字符,而双引号方便了很多。
反之,如果字符串中有双引号,为了避免使用转义符,可以使用单引号来定义这个字符串。str5 = 'The teacher said: "Practice makes perfect" is a very famous proverb.'
3个单引号及3个双引号
实际上3个单引号和3个双引号不经常用,但是在某些特殊格式的字符串下却有大用处。通常情况下我们用单引号或者双引号定义一个字符串的时候只能把字符串连在一起写成一行,如果非要写成多行,就得在每一行后面加一个\表示连字符,比如:str1 = "List of name:\
Hua Li\
Chao Deng"
而且即使你这样写也不能得到期望的输出:List of name:
Hua Li
Chao Deng
实际上输出是下面这样的:>>> str1 = "List of name:\
... Hua Li\
... Chao Deng"
>>> print(str1)
List of name: Hua Li Chao Deng
那么该如何得到我们期望的一行一个名字的输出格式呢?这就是3个引号的作用了:>>> str1 = """List of name:
... Hua Li
... Chao Deng
... """
>>> print(str1)
List of name:
Hua Li
Chao Deng
-
mysql php 单引号 双引号_PHP单引号和双引号的区别
2021-01-27 17:38:26通过前面《PHP数据类型》的介绍我们知道,可以使用单引号和双引号来定义字符串,实际上在 PHP 中对单引号和双引号的处理是不同的。双引号会解析字符串中的变量,而单引号不会,同时单引号与双引号在字符处理上单引号...通过前面《PHP数据类型》的介绍我们知道,可以使用单引号和双引号来定义字符串,实际上在 PHP 中对单引号和双引号的处理是不同的。双引号会解析字符串中的变量,而单引号不会,同时单引号与双引号在字符处理上单引号要优与双引号。
下面通过一些示例来具体说明一下这两者之间的去吧。
1) 对变量的解析不同
PHP 会解析双引号中的变量,而不会解析单引号中的变量。也就是说,如果使用单引号定义的字符串中出现变量,在输出时变量会被原样输出,不会解析成变量的值。而如果使用双引号定义的字符串中存在变量,在输出时变量会被解析为具体的值。
示例代码如下:
$website = 'C语言中文网';
$url = 'http://c.biancheng.net/php/';
$str1 = '您正在访问的是:$website
';$str2 = "网站的链接地址为:$url";
echo $str1;
echo $str2;
?>
运行结果如下:
您正在访问的是:$website
网站的链接地址为:http://c.biancheng.net/php/
需要注意的是,虽然双引号定义的字符串能够解析变量,但是如果变量后边还有字符串的话,就需要将变量与后面的字符串使用空格分开,或者使用大括号{ }将变量包裹起来。如果不这么做的话,很可能会造成意想不到的结果。
示例代码如下:
$a = 'C语言';
$b = 'PHP';
$str1 = "欢迎访问$a中文网
";$str2 = "欢迎访问{$a}中文网
";$str3 = "$b 是世界上最好的语言!";
echo $str1;
echo $str2;
echo $str3;
?>
运行结果如下:
欢迎访问
欢迎访问C语言中文网
PHP 是世界上最好的语言!
2) 转义的字符不同
单引号和双引号中都可以使用转义字符\,但是,在单引号定义的字符串中只能转义单引号和转义符本身,而在双引号定义的字符串中,PHP 可以转义更多的特殊字符。
在双引号定义的字符串中能使用的转义字符如下表所示:
转义字符
说明
转义字符
说明
\n
换行
\$
代表 $ 本身
\r
回车
\\
代表反斜线 \ 本身
\t
水平制表符,一个缩进
\'
单引号本身
\v
垂直制表符
\"
代表双引号本身
示例代码如下:
$a = '3';
$b = '2';
$str1 = "\"\$a\" 的值为:$a\n,";
$str2 = '\'$b\' 的值为:'.$b;
echo $str1;
echo $str2;
?>
运行结果如下:
"$a" 的值为:3 ,'$b' 的值为:2
3) 解析速度不同
因为单引号不需要考虑变量的解析,所以处理速度比双引号要快,我们在定义字符串时应该尽量遵循能用单引号尽量用单引号的原则。
如果在字符串中不需要加入变量或者单引号'和反斜杠\时,尽量使用单引号来定义字符串。因为省去了双引号检查处理转义字符和解析变量的时间,所以可以提高程序的运行效率。
这里总结了一下 PHP 中使用引号的原则,如下所示:
在 PHP 代码中尽量用单引号;
字符串中包含变量的时候,使用双引号可以简化操作;
如果字符串比较复杂且包含变量时,将变量使用大括号包裹起来;
字符串中不需要加入变量或者单引号'和反斜杠\时,尽量用单引号定义字符串。
-
中单引号和双引号的区别与联系_Python中单引号,双引号,3个引号的用法
2021-01-11 19:57:11Python中单引号,双引号,3个单引号及3个双引号的区别一、单引号和双引号在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如str1='python'str2="python"str1和str2是没有任何区别的。但是如果遇到...Python中单引号,双引号,3个单引号及3个双引号的区别
一、单引号和双引号
在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如
str1 = 'python'
str2 = "python"str1和str2是没有任何区别的。但是如果遇到需要转义字符的情况,来看单引号和双引号的版本。
单引号版本:
str3 = 'We all know that \'A\' and \'B\' are two capital letters.'
双引号版本:
str4 = "We all know that 'A' and 'B' are two capital letters."
单引号需要加 '' 来让编译器判断目前是转义字符,而双引号方便了很多。
反之,如果字符串中有双引号,为了避免使用转义符,可以使用单引号来定义这个字符串。
str5 = 'The teacher said: "Practice makes perfect" is a very famous proverb.'
二、3个单引号及3个双引号
实际上3个单引号和3个双引号不经常用,但是在某些特殊格式的字符串下却有大用处。
通常情况下我们用单引号或者双引号定义一个字符串的时候只能把字符串连在一起写成一行
如果非要写成多行,就得在每一行后面加一个\表示连字符,比如:
str1 = "List of name:\
Hua Li\
Chao Deng"而且即使你这样写也不能得到期望的输出:
List of name:
Hua Li
Chao Deng实际上输出是下面这样的:
>>> str1 = "List of name:\
... Hua Li\
... Chao Deng"
>>> print(str1)
List of name: Hua Li Chao Deng那么该如何得到我们期望的一行一个名字的输出格式呢?这就是 3个引号 的作用了:
>>> str1 = """List of name:
... Hua Li
... Chao Deng
... """
>>> print(str1)
List of name:
Hua Li
Chao Deng虽然我们也可以通过给字符串加上\n实现:
>>> str1 = "List of name:\nHua Li\nChao Deng"
>>> print(str1)
List of name:
Hua Li
Chao Deng但是这样在输入的时候看起来就乱了很多。所以这种情况下尽量使用3个引号,至于3个单引号还是双引号都是一样的,只需要注意如果字符串中包含有单引号就要使用双引号来定义就好了。
而且使用3个引号还有一个特别棒的作用就是:
加注释
>>> str1 = """
... List of name:
... Hua Li # LiHua
... Chao Deng # DengChao
... """
>>> print(str1)
List of name:
Hua Li # LiHua
Chao Deng # DengChao此外,多行注释也可以用用三个单引号 ''' 或者三个双引号 """ 将注释括起来,例如:
单引号版本:
#!/usr/bin/python3
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print("Hello, World!")双引号版本:
#!/usr/bin/python3
"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号
这是多行注释,用三个双引号
"""
print("Hello, World!")参考:
https://www.cnblogs.com/zzdbullet/p/10025301.html
更多好文
亲,需要你的“分享”和“在看”
IT入门 感谢关注
程序员题库→程序员用的单词表→练习地址:www.520mg.com/it#code -
mysql php 单引号 双引号_再谈PHP单引号和双引号区别
2021-01-27 17:38:26关于单引号和双引号的区别和效率问题。很多朋友了解的不是很清楚,一直以为PHP中单引号和双引号是互通的,直到有一天,发现单引号和双引号出现错误的时候才去学习研究。所以今天再拿出来谈谈他们的区别,希望大家... -
javascript单引号和双引号的区别和处理
2020-10-25 22:32:15主要介绍了javascript单引号和双引号的区别和处理,希望对大家有所帮助 -
c语言双引号和单引号的区别_python单引号和双引号的区别
2020-12-28 16:45:08python单引号和双引号的区别简单来说,在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符串。但是这两种通用的表达方式,除了可以简化程序员的开发,避免出错之外,还有一种好处,就是可以减少转义... -
shell编程基础 单引号和双引号的区别
2020-09-16 00:42:35单引号和双引号都能关闭shell对特殊字符的处理。不同的是,双引号没有单引号严格,单引号关闭所有有特殊作用的字符,而双引号只要求shell忽略大多数,具体的说,就是①美元符号②反引号③反斜杠,这3种特殊字符不被... -
C语言单引号和双引号
2020-03-26 10:49:24最近的C语言课在教字符串,貌似N多同学搞不清楚单引号和双引号的区别,有人还以为在C语言里用哪个都可以…其实C语言中的单引号和双引号含义是一点也不一样滴… 看别人讲指针与数组时也有点弄不清sizeof一个双引号括... -
jquery 单引号和双引号的区别及使用注意
2020-10-27 01:43:10在js中单引号和双引号都是一样的,平时使用的时候尽量用单引号,只有碰到嵌套的时候才会同时用两种引号,感兴趣的朋友可以了解下 -
SQL - 单引号和双引号的区别
2018-08-01 23:00:25原文转载至:SQL中的单引号和双引号有区别吗? 在标准 SQL 中,字符串使用的是单引号。 如果字符串本身也包括单引号,则使用两个单引号(注意,不是双引号,字符串中的双引号不需要另外转义)。 但... -
js中单引号和双引号的使用
2020-05-10 23:42:04js中单引号和双引号的使用 在js中,单引号和双引号使用上看不出太多异同,但是如果存在引号嵌套的时候,就需要两种符号配合使用,比如外部使用单引号,内部的引号使用双引号。 -
SQL中单引号和双引号
2019-03-27 10:42:00SQL中单引号和双引号 比如说: String sql = "select * from clients where logname=' "+name+" 'and password=' "+pwd+" '" ; SQL中只支持单引号,表示字符串常量 SQL中的双引号用于表示... -
python里的单引号和双引号的有什么作用
2020-12-17 08:15:36python单引号和双引号的区别 简单来说,在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符串。但是这两种通用的表达方式,除了可以简化程序员的开发,避免出错之外,还有一种好处,就是可以减少... -
js单引号和双引号
2018-08-07 18:35:39结论:(1)只使用字符的字符串,单引号和双引号没有区别 (2)在单引号包括的字符串中可以直接用双引号,在双引号包括的字符串中可以直接用单引号 (3)如果在双引号包括的字符串中用双引号,需要用反斜杠... -
java中双引号和单引号_Java中的单引号和双引号之间有区别吗?
2021-02-27 18:27:31问题Java中的单引号和双引号之间有区别吗?#1 热门回答(126 赞)对于literalchar使用单引号,对于literalString使用双引号,如下所示:char c = 'a';String s = "hello";它们不能以任何其他方式使用(例如,在Python中... -
PHP单引号和双引号区别
2018-08-04 14:57:00关于单引号和双引号的区别和效率问题。很多朋友了解的不是很清楚,一直以为PHP中单引号和双引号是互通的,直到有一天,发现单引号和双引号出现错误的时候才去学习研究。所以今天再拿出来谈谈他们的区别,希望大家...
-
牛牛量化策略交易
-
linux下python3出现 no module named pip
-
一篇文章教会你Python网络爬虫程序的基本执行流程
-
C语言零基础入门(详细讲解)
-
helm安装harbor后登陆一直提示账户或密码错误
-
教育谋定应用型高校 经济和信息化研究共建成都工业学院
-
【爱码农】C#制作MDI文本编辑器
-
ajax同步到异步的区别
-
SecureCRT.zip
-
M73 UEFI黑苹果文件
-
MySQL 视图
-
自动化测试Python3+Selenium3+Unittest
-
华为1+X——网络系统建设与运维(中级)
-
AS_SSD_MP_Tool_V0210(T10)_B27A_20190719.rar
-
投标方法论
-
部编三年级上册语文习作:那次玩得真高兴.pdf
-
2021-03-04
-
LVS + Keepalived 实现 MySQL 负载均衡与高可用
-
OpenSSL.zip
-
北京浮生记:20年前国产个人小游戏.zip