广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言特殊符号的补充理解
  • 767
分享到

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

2024-04-02 19:04:59 767人浏览 独家记忆
摘要

续接符 反斜杠"",他有两种最常见的功能,一就是续航功能,二就是我们提到反斜杠就会很敏感的转义字符。 if("1==a&&2==b&&am

续接符

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

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

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

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

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

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

旋转光标

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

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

效果如下:

在这里插入图片描述

单双引号潜规则

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

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

在这里插入图片描述

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

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

在这里插入图片描述

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

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

短路

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

ASCII码刚需

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

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

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

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

--结束END--

本文标题: C语言特殊符号的补充理解

本文链接: https://www.lsjlt.com/news/139135.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言特殊符号的补充理解
    续接符 反斜杠"",他有两种最常见的功能,一就是续航功能,二就是我们提到反斜杠就会很敏感的转义字符。 if("1==a&&2==b&&am...
    99+
    2022-11-13
  • C语言宏中#和##特殊符号怎么用
    这篇文章将为大家详细讲解有关C语言宏中#和##特殊符号怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。宏中 "#" 和 "##"...
    99+
    2022-10-19
  • 详解R语言中的表达式、数学公式、特殊符号
    目录##一、R语言的“表达式”##二、产生“表达式”的函数####1、expression 函数####2、quote函数####3、bquote 和 substitute 函数##...
    99+
    2022-11-11
  • C语言入门篇--充分理解操作符
    目录1.算术操作符1.1除法运算1.2取模运算2.移位操作符相关知识1.移位运算是站在二进制角度移位的2.左移右移,原始变量值不发生变化除非给原始变量赋值4.C语言中的移位运算符5....
    99+
    2022-11-12
  • 如何理解Linux Shell中的特殊符号
    本篇内容主要讲解“如何理解Linux Shell中的特殊符号”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解Linux Shell中的特殊符号”吧!这些特殊符号罗列出来大致如下:代码如下:...
    99+
    2023-06-09
  • C语言详细解析有符号数与无符号数的表示
    目录一、计算机中的符号位二、有符号数的表示法三、无符号数的表示法四、signed 和 unsigned五、小结一、计算机中的符号位 数据类型的最高位用于标识数据的符号 最高位为1,表...
    99+
    2022-11-13
  • C语言详细讲解注释符号的使用
    目录一、注释规则二、注释中一个有趣的问题三、教科书型注释四、迷惑型的注释五、忽悠型注释六、搞笑型注释七、漂亮的程序注释八、小结一、注释规则 编译器在编译过程中使用空格替换整个注释字符...
    99+
    2022-11-13
  • GO语言API开发:如何处理文件路径中的特殊字符?
    在进行文件操作的时候,我们经常会遇到文件路径中存在一些特殊字符的情况,例如空格、斜杠等。这些特殊字符会给文件操作带来不便,甚至会导致程序崩溃。在GO语言中,如何处理文件路径中的特殊字符呢?本文将为大家介绍几种处理方法。 方法一:使用字符串...
    99+
    2023-11-13
    api 文件 path
  • C 语言的弱符号与弱引用你了解吗
    目录C语言中的__attribute__((weak)) 与 attribute ((weakref())弱符号弱符号的作用与示例弱引用测试代码1:测试代码2:总...
    99+
    2022-11-13
  • C语言位段(位域)机制结构体的特殊实现及解析
    目录概念内存分配位段跨平台问题作用Tip应用场景概念 什么是位段? 位段又称为位域,C语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员就叫做称为位段( ...
    99+
    2022-11-13
  • Java解析xml文件遇到特殊符号异常的情况(处理方案)
    在一次Java解析xml文件的开发过程中,使用SAX解析时,出现了这样一个异常信息: Error on line 60 of document : 对实体 "xxx" 的引用必须以...
    99+
    2022-11-12
  • C语言实例上手深入理解操作符的使用
    目录1.闰年练习2.绝对值练习3.字符转换练习4.四则表达式练习5.隐式类型转换1.闰年练习 编写逻辑表达式判断用户给定的年份是否是闰年,年份可以被4整除但不能被100整除;年份可以...
    99+
    2022-11-13
  • C语言字符串处理的惊天大坑问题解决
    目录引言C 语言字符串保证 C 代码的安全性非拉丁语言的处理引言 毋庸置疑,在使用 C 字符串时必须小心,否则你就会因为各种的未定义行为而感到头疼。 最近,我一直在学习 C 语言,也...
    99+
    2023-05-20
    C语言字符串处理 C语言字符串处理问题
  • C语言简明讲解三目运算符和逗号表达式的使用
    目录一、三目运算符二、逗号表达式三、小结一、三目运算符 三目运算符( a b : c)可以作为逻辑运算的载体 规则:当 a 的值为真时,返回 b 的值;否则返回 c 的值 下面看一...
    99+
    2022-11-13
  • 详解C语言对字符串处理函数的实现方法
    目录strlen:1.计数器版本:2.递归的版本3.指针-指针版本strcat:strcmp:总结strlen: 1.计数器版本: #include<stdio.h>...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作