首页 > 其他分享 >C语言中的字符串、转义字符、注释

C语言中的字符串、转义字符、注释

时间:2022-10-18 23:01:58浏览次数:45  
标签:C语言 test 转义字符 a2 printf 字符串 include

一.字符串

"hello world!\n"
现这种由双引号引起来的一串字符称为字符串面值,简称字符串。
这里需要注意:字符串的结束标志是一个\0的转义字符。在计算字符串长度时\0是结束标志,不算字符串内容。
举例说明一下:

#include <stdio.h>
#include <stdlib.h>

int main()
{
char a[]="abc";
char a2[]={'a','b','c'};
printf("a[]=%s\n",a);
printf("a2[]=%s\n",a2);
}

C语言中字符串是用数组来存储,上面代码中a和a2看似应该输出一样的内容,将他运行一下试试

C语言中的字符串、转义字符、注释_转义字符

a的结果跟我们预测的一样,但是a2就很奇怪, 这是因为字符串的结束标志是一个\0的转义字符,在数组a中在abc后面其实还有一个\0,我们可以在a2中加上'\0'试试

C语言中的字符串、转义字符、注释_转义字符_02

 这样输出的结果就跟我们所预想的一样,再解释一下什么叫做在计算字符串长度时\0是结束标志,这里我们知道计算字符串长度要用到strlen库函数,那么就还需要加上#include<string.h>

#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int main()
{
char a[]="abc";
char a2[]={'a','b','c','\0'};
printf("a[]=%s\n",a);
printf("a2[]=%s\n",a2);
printf("%d\n",strlen(a));
printf("%d\n",strlen(a2));
}

​输出结果是

C语言中的字符串、转义字符、注释_转义字符_03

​ 我们能看到a2中虽然我们写了四个字符,但是在用strlen输出时会发现在计算字符串长度时\0是结束标志

二.转义字符

转义就是说转变了原有的意义。

比如说我们打印一下这样一个目录:c:\test\32\test.c

C语言中的字符串、转义字符、注释_#include_04

我们发现直接用printf输出的内容跟我们所想的完全不一样,这是因为转义字符的存在,大家都知道\n是换行的意思,我们看输出的内容在c:后面是一大段空格,然后就是est,那么我们就可以猜测\t是不是也是有其他意思?

C语言中的字符串、转义字符、注释_#include_05

C语言中的字符串、转义字符、注释_字符串_06

根据转义字符表我们发现\t就是水平制表符,那么如果我们不想让其变成转义字符应该怎么办呢?重新回到上面问题“打印一下这样一个目录:c:\test\32\test.c”,我们只需要再加上一个\就可以了,比如:

C语言中的字符串、转义字符、注释_字符串_07

三.注释

1.代码中不需要的代码可以直接删除,也可以注释掉
2.代码中有些部分比较难懂,就可以加上注释文字

有两种注释方法:
1.在需要注释的代码前用“\\”
2.用“/*········*/” ,其中省略号是指想要注释的代码块

比如:

#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int main()
{
/*
printf("c:\\test\\32\\test.c\n");
int a;
*/

// printf("c:\\test\\32\\test.c\n");
// int a;
return 0;
}

 这两种方法都可以注释,用codeblocks写代码“\\”注释的话可以选中代码再用快捷键Ctrl+Shift+c进行注释,取消的话用Ctrl+Shift+x




标签:C语言,test,转义字符,a2,printf,字符串,include
From: https://blog.51cto.com/u_15832450/5768315

相关文章

  • 如何不写一行代码把 Mysql json 字符串解析为 Elasticsearch 的独立字段
    Elasticsearch最少必要知识实战教程直播回放1、事出有因实战问题:有数百万数据需要导入Elasticsearch做性能对比测试,但当前数据存储在Mysql中,且核心字段以Json字符......
  • 浅谈C语言中的变量
    一.定义变量的方法就是类型+变量名+数值,比如:inta=12;shortage=22;charch='w';二.变量的分类1.全局变量2.局部变量全局变量:定义在代码块({})之外的变量。局部......
  • 浅谈C语言中的常量(字面常量、const修饰的常变量、#define定义的标识符常量、枚举常量
    一.常量不会变的量就是常量,比如性别,血型等;二.常量的分类1.字面常量2.const修饰的常变量3.#define定义的标识符常量4.枚举常量1.字面常量2.const修饰的常变量    在......
  • C语言学习笔记-地址和指针
    1背景嵌入式开发的时候频繁使用指针数组,以前本科的时候学的都忘了,因此接着学习GD32固件库学习的机会系统的看了一下书,并做出整理2查找地址:&运算符&主要是给出变量的地......
  • C语言学习2--10/18
    常量: 不会变化的数据1.“hello”字符串常量,‘A’字符常量,-10整型常量,3.14浮点常量2.#definePI3.14,宏定义,推荐3.consta=10 const关键字,被该关键字......
  • C语言基础-数组得初始化
    #include<stdio.h>intmain(){inta[10];intsize=sizeof(a)/sizeof(a[0]);//计算数组得大小for(inti=0;i<size;i++){a[i]=i*100;......
  • 实验1 C语言开发环境使用和数据类型、运算符、表达式
    Task1.c#include<stdio.h>intmain(){printf("O\n");printf("<H>\n");printf("II\n");return0;}Task1_1.c#include<stdio.h>intmai......
  • IDEA里编译报错提示常量字符串过长
    问题从数据库查出某字段(text类型)数据,通过编写程序解析转换做处理,程序编写完成编译时报错:Error:java:常量字符串过长解决查询资料发现,原因是javac在编译期间,常量字......
  • 已整理-shell内置字符串常用操作
     bash里面内置了一些常用的字符串操作;1、字符串截取a="abc"${a:1:1}#字符串截取,从0开始编号,第1个字符开始,截取1个 2、字符串替换a="aabbcc......
  • C语言-流程控制语句
    一:分支语句1.if语句流程控制语句可以让程序中的语句不再从上到下逐条执行分支是一种流程控制语句,可以把程序中某些语句忽略掉不去执行if关键字可以用来编写分支语句,只有......