问题1:单引号和双引号有何区别?

单引号和双引号

C语言中的单引号用来表示字符字面量

C语言中的双引号用来表示字符串字面量

例子:

'a'表示字符字面量,在内存中占1个字节;

'a'+1表示'a'的ASCII码加1,结果为'b';

"a"表示字符串字面量,在内存中占2个字节,"a"+1表示指针运算,结果指向"a"结束符'\0'。

例子:单引号与双引号的本质

#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;
}

小贴士:

1、字符自变量被编译为对应的ASCII码;

2、字符串字面量被编译为对应的内存地址;

3、printf的第一个参数被当成字符串的内存地址;

4、内存的低地址空间不能在程序中随意访问;

0x08048000是一个比较特别的地址,小于该编号的地址不能进行访问,强行访问会导致段错误。

总结:

1、单引号括起来的单个字符代表整数;

2、双引号括起来的字符代表字符指针;

3、C编译器接受字符和字符串的比较,无任何意义;

4、C编译器允许字符串对字符变量赋值,只能得到错误;

C语言进阶第14式:单引号和双引号相关推荐

  1. 字符变量 单引号 c语言,【C】 14_单引号和双引号

    单引号和双引号 C 语言中的单引号用来表示字符字面量 C 语言中的双引号用来表示字符串字面量 'a' 表示字符字面量,在内存中占用 1 个字节,'a' + 1 表示 ASCII码加 1 ,结果为 b ...

  2. Go单引号和双引号区别

    首先做个测试,看下面那个选项是正确的: A. str:='abc'+'123' B. str:="abc"+"123" C. str:='123'+" ...

  3. 【C语言进阶剖析】14.C语言中的单引号和双引号

    文章目录 一.单引号和双引号 二.小贴士 三.程序实例分析1 四.程序实例分析2 五.容易混淆的代码 六.小结 一.单引号和双引号 C语言中的单引号用来表示字符字面量 C语言中的双引号用来表示字符串字 ...

  4. c语言中常量单双引号,C语言常量中字元与字串 除了单引号与双引号的区别外,还有什么不同。...

    C语言常量中字元与字串 除了单引号与双引号的区别外,还有什么不同.以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! C语言 ...

  5. 去掉字符串中的单引号和双引号_同时搞定Android和iOS的Dart语言(4):字符串类型...

    在Dart语言中,用String表示字符串类型,可以用单引号或双引号表示字符串的值,例如,下面声明String类型变量的代码都是正确的. String s1 = 'hello world';Strin ...

  6. 读c语言深度剖析 -- 单引号与双引号、逻辑运算符、位运算符、花括号

    单引号与双引号 我们知道双引号引起来的都是字符串常量,单引号引起来的都是字符常量. 比如:'a'和"a"完全不一样,在内存里前者占1个byte,后者占2个byte. 1,'1',& ...

  7. c字符串中包含双引号_必须知道的C语言知识细节:单引号和双引号正确用法

    C语言中ACSII码字符单引号'和双引号"在程序中经常出现,很简单,但却是十分重要的语法标点符号,初学者容易混淆使用. 单引号在字符常量时使用,表示单个字符. 例如: char c; c = ...

  8. php语言中双引号的作用是什么,php中的单引号与双引号作用详解

    一.引号定义字符串 在Php中,通常一个字符串被定义在一对引号中,如: 'I am a string in single quotes' "I am a string in double q ...

  9. C语言双引号A单引号A,C语言查漏补缺——单引号和双引号

    一直对于单引号和双引号有些混淆,本节讨论一下单引号和双引号的问题. ide 1.基本知识spa 一.C语言中单引号用来表示字符字面量 指针 二.C语言中双引号用来表示字符串字面量 blog 好比:'a ...

最新文章

  1. iOS关于像素的适配
  2. 基于STM32的DS1302时钟芯片驱动
  3. 1470. Shuffle the Array
  4. 深度挖掘 Laravel 生命周期
  5. mysql查询最小的id_Mysql查询表中最小可用id值的方法
  6. MyBatis源码分析(三):MyBatis初始化(配置文件读取和解析)
  7. easyexcel导入简单封装
  8. c语言 linux常用函数,C语言常用函数
  9. 【操作系统/OS笔记02】操作系统的历史、操作系统结构
  10. ArcGIS水文分析实战教程(14)提取水库湖泊等面状水系
  11. 深入理解ButterKnife源码并掌握原理(四)
  12. Introduction to Computer Networking学习笔记(三):IP与子网掩码
  13. 第一章 路径规划算法概述
  14. CodeBlocks汉化
  15. 网页中超长图片转成pdf文档
  16. Wps文件如何转成word文档
  17. 天池数据竞赛docker提交操作学习
  18. 企业vi标志设计中文字设计的方法
  19. php 二维数组为空,php 判断数组是否为空的几种方法
  20. C#用easy-mvc开发的后台管理系统

热门文章

  1. 从零开始学产品第二篇:关于测试的一切
  2. 20220304-0307es
  3. @Value的几种常用用法
  4. 开窗函数-first_value/last_value
  5. 脑机接口基础学习19---救救我吧,Evoked数据可视化
  6. 今天有个做测试的朋友跳槽涨薪20k,我惊呆了
  7. 一条调整的消息(第15期)
  8. AutoCADElectrical制图软件对电脑配置的要求
  9. Linux shellcode 编写入门 (转)
  10. emmet :_使用Emmet快速编写HTML Crazy Fast:交互式指南