特殊符号(一)—反斜杠 ” \ “(旋转光标和倒计时的实现)

news/2025/2/12 20:03:38/

特殊符号

  • 一.功能
    • 1.功能一:续航符
    • 2.功能二:转义符
  • 二.旋转光标和倒计时

在这里插入图片描述

一.功能

1.功能一:续航符

顾名思义,就是连续的意思,主要用于换行的时候,看例子

在这里插入图片描述

以上是一个简单的判断语句,如果if里面的判断条件过多,很有可能导致我们无法一行写完,不得不换行,这样就很影响我们的阅读,所以续航的作用就体现出来啦

在这里插入图片描述

一些细节

我在续航符前加上空格行不行呢?答案是可以的

在这里插入图片描述

那我们可不可以在其之后加空格呢?答案是不行的

在这里插入图片描述

有时候使用续航符时莫名其妙就出现了错误,很有可能就是后面加了空格,续航符后什么也不能加

续航符存在的意义

在编译器中,你其实也可以直接换行

在这里插入图片描述

但这就有些相当于一个函数如果你不写返回值也能编过(默认返回值是int),但作为一个好的程序员,你应当让每个人来阅读你的代码时都能清晰明了不存在二义性。如果你直接换行,可能别人就会疑惑你为什么要换行呢?是有什么深意吗?而如果你直接加上续航符,那么别人就很能明白你就是在换行。它自带自阅读性

2.功能二:转义符

这里举个很简单的例子,如果我想要打印出一个双引号

在这里插入图片描述

很明显,这样直接打印是不行的,这时我们要用到转义符

在这里插入图片描述

以上是它的第一种使用。接下来是它的第二种使用

在这里插入图片描述

这是我们直接打印出来的,如果我想要打印出hello换行world

在这里插入图片描述

这是我们经常用到的换行符,n本身不具备换行功能但加上 \ 就有了换行功能

总结:
1.续航符:一般用在较长的代码中
2.转义符(a.特殊转字面 b.字面转特殊)

二.旋转光标和倒计时

首先什么是回车换行呢?这简单嘛,平常我们所说的换行直接敲一下enter建就ok了。但回车和换行其实是两种概念

在这里插入图片描述

回车是跳到当前行的最开始

在这里插入图片描述

换行是光标移动至下一行

我们平常所说的换行其实就是融合了回车和换行两个功能

换行 \n
回车 \r

但是在c语言中,其实\n是身兼两职的,你输入\n就相当于输入了\r和\n

实现旋转光标的概念

我们只需要让编译器不段输入 | / - \ |紧接着用回车符,让它不断在同一位置打印上述的4种符号就可以了


#include<stdio.h>
#include<windows.h>
int main()
{int index = 0;const char* lable = "|/-\|";while (1){index %= 4;//保证它不越界printf("[%c]\r", lable[index]);//注意是回车符哦index++;Sleep(30);//让我们看清楚}//很简单的一段代码return 0;
}

在这里插入图片描述
倒计时

原理很简单,跟上面的一样,从9依次打印到0在用回车符让其每次都在同一位置显示

int main()
{int i = 9;for (; i >= 0; i--){printf("[%d]\r", i);Sleep(500);}return 0;
}

在这里插入图片描述

在这里插入图片描述


http://www.ppmy.cn/news/3680.html

相关文章

ASEMI肖特基二极管MBR30200FCT封装,MBR30200FCT体积

编辑-Z ASEMI肖特基二极管MBR30200FCT参数&#xff1a; 型号&#xff1a;MBR30200FCT 最大重复峰值反向电压&#xff08;VRRM&#xff09;&#xff1a;200V 最大RMS电桥输入电压&#xff08;VRMS&#xff09;&#xff1a;140V 最大直流阻断电压&#xff08;VDC&#xff09…

Python中错误和异常的区别是什么?

在任何编程语言中&#xff0c;编写程序时出现异常或错误情况是常有的事情&#xff0c;也经常有人将错误和异常混为一谈&#xff0c;认为错误就是异常&#xff0c;异常就是错误。那么Python中什么是异常?错误和异常的区别是什么?本篇文章为大家介绍一下。 什么是异常? 异常即…

javascript函数方法中bind、call、apply的使用和区别

一&#xff0c;this的指向 this.name pink const obj {name: coderkey,way(age,sex) {console.log(姓名:${this.name} 年龄:${age} 性别:${sex});} } obj.way(24,男) // 姓名:coderkey 年龄:24 性别:男 对象obj的方法 let fn obj.way fn(24,男) // 姓名:pink 年龄:24 性…

分布式光伏发电计及气象因子及出力预测方法研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

frp内网穿透详细安装步骤以及使用

frp是一款内网穿透工具&#xff0c;首先要一台服务器用作服务端&#xff08;Linux&#xff09;&#xff0c;将自己的(WIN10)电脑用作客户端&#xff0c;我将通俗的讲解详细的安装以及使用过程&#xff0c;废话不多直接开始。 Linux要开放 7000 7500 9600端口&#xff0c;一…

QsciScintilla编辑器从任意坐标拿到正确的行号

QSci官方API函数是&#xff1a; //! Returns the line which is at \a point pixel coordinates or -1 if there //! is no line at that point. int lineAt(const QPoint &point) const; 然而&#xff0c;当鼠标位置为空行的位置&#xff0c;此时拿到的行号总是…

MobSDK引进相关问题

1、进入全球领先的数据智能科技平台-MobTech袤博mob官网 首先注册帐号、核验身份、选择开发者平台 2、创建项目的appkey和对应的appSecret 进入开发者模式后&#xff0c;对应以下几个选项模块&#xff08;以短信验证模块为例&#xff09;&#xff0c;点击开始使用 跳转到个人…

《自己动手写CPU》学习记录(9)——第7章/Part 2

目录 引言 致谢 流水线暂停 指令说明 madd、maddu、msub、msubu 设计 宏定义文件 程序计数器模块 译码模块 执行模块 访存模块 HI LO 寄存器模块 通用寄存器模块 流水线控制模块 程序ROM MIPS32顶层 MIPS32 SOPC 仿真 仿真程序 TESTBENCH 仿真结果 引言 …