服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C/C++ - C语言特殊符号的补充理解

C语言特殊符号的补充理解

2022-09-22 15:52乔乔家的龙龙 C/C++

这篇文章主要为大家介绍了C语言特殊符号的使用补充理解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

续接符

反斜杠"",他有两种最常见的功能,一就是续航功能,二就是我们提到反斜杠就会很敏感的转义字符。

if("1==a&&2==b&&3==c)
{
printf("hello
");
}

有以上的代码我们可以等价于

if("1==a&&
2==b&&
3==c)
{
printf("hello
");
}

这里反斜线就起到了一个连接上下两行的代码,在咱看来是独立的三行但在编译器眼里这仨货就是在同一排。设想一下当我的条件足够多时为了提高代码可读性,我们最好不挤在一排看着又臭又长,分占会显得更加清新,所在大的工程文件里面我们经常会使用续航符号来操作我们代码的美观。

注意:续航符在使用时要注意空格,续航符之前的空格是不存在影响的,但如果放在后面就不能编译。

旋转光标

由我们系统方面的知识和C语言关键字基础,我们就能搞出来一个我们常见的旋转光标:

int main()
{
int a = 0;
const char *spot = "|/-";
while(1)
{
printf("[%c]
",spot[a]);
a++;
Sleep(300);
}
}

效果如下:

C语言特殊符号的补充理解

单双引号潜规则

char a= "abc";
printf("%c
",a);

我们来看看这个代码的结果:

C语言特殊符号的补充理解

一个问题,我们脑海里学习的知识告诉我们char类型是一个字符,但上面代码不仅不报错还能完完全全打印出来,我把内容换成 ‘abcd’ 依然能打印出一个 d ,再加一个 e 时就会开始报错了,我们就针对这个打印 ‘abc’ 的现象来看看

我们直接对比一下他的字符长度:

C语言特殊符号的补充理解

擦嘞,为啥 ‘1’ 会是4个字节大小?其实在C99中,这里的 a 叫做整型字符常量,本质上是被编译器看作int类型,所以其实就是在发生着一个截断现象,我们对 char 类型的认知并没有毛病,只是这里一直是在将4个字节的数据保存进一个 char 类型里面。

当然,这种认知也只是存在与C语言里,在C艹中仍然是被解释成一个字节,这也能解释为什么咱四个字节以内都能跑。

短路

很简单,说的就是一个逻辑与 (&&),含义就是一个条件不通过就不需要再看后续的条件的情况就是短路。

ASCII码刚需

为什么咱计算机要搞这么多花里胡哨的符号呢?内存里存的都是二进制数据,即0和1的一串序列,这时所谓的计算机语言,但作为一个person来讲,咱最擅长的不是看0和1,是我们能直观理解的语句。

我们的计算器程序,在计算结果后如果返回的不是十进制数而是一个二进制序列是对我们极为不友好的,特别是不熟悉二进制的普通用户。所以程序会存在一个映射,这个映射机制就是给一个二进制序列安排一个人为设计的符号或图形,比如我屏幕上一个“1234”,在我们眼中它是一个整型1234,但在计算机眼里它就是四个字符。

所以为什么我们手机啥的能更换语言系统,英文,简体中文,繁体中文……,其本质原理就是改了一张映射表。

以上就是C语言特殊符号的补充理解的详细内容,更多关于C语言特殊符号的资料请关注服务器之家其它相关文章!

原文链接:https://blog.csdn.net/qq_61500888/article/details/122144106

延伸 · 阅读

精彩推荐
  • C/C++C语言实现linux网卡检测改进版

    C语言实现linux网卡检测改进版

    这篇文章主要为大家详细介绍了C语言实现linux网卡检测的改进版,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    handyhuang5182021-06-27
  • C/C++C++ 实现哈希表的实例

    C++ 实现哈希表的实例

    这篇文章主要介绍了C++ 实现哈希表的实例的相关资料,这里使用C++实现哈希表的实例帮助大家彻底理解哈希表的原理,需要的朋友可以参考下...

    liuzhanchen198710692021-05-31
  • C/C++C语言实现简单猜数字游戏

    C语言实现简单猜数字游戏

    这篇文章主要为大家详细介绍了C语言实现简单猜数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    快乐的星球12382021-12-09
  • C/C++C语言各种操作符透彻理解上篇

    C语言各种操作符透彻理解上篇

    C 语言提供了丰富的操作符,有:算术操作符,移位操作符,位操作符,赋值操作符。让我们通读本篇来详细了解吧...

    七忆岁和6592022-09-15
  • C/C++C++ push方法与push_back方法的使用与区别

    C++ push方法与push_back方法的使用与区别

    这篇文章主要介绍了C++ push方法与push_back方法的使用与区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的...

    小呆呆yy7292021-08-06
  • C/C++深入解析int(*p)[]和int(**p)[]

    深入解析int(*p)[]和int(**p)[]

    以下是对int(*p)[]和int(**p)[]的使用进行了详细的分析介绍,需要的朋友可以参考下...

    C语言教程网3872020-12-17
  • C/C++C++中各种初始化方式示例详解

    C++中各种初始化方式示例详解

    这篇文章主要给大家介绍了关于C++中各种初始化方式的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用C++具有一定的参考学习价值,需...

    linuxidc10082021-06-06
  • C/C++C语言以数据块的形式读写文件实例代码

    C语言以数据块的形式读写文件实例代码

    本文主要介绍C语言中以数据块的形式读写文件,这里提供了实例代码举例说明,有需要的小伙伴可以参考下...

    C语言中文网5552021-04-09