字符串
"hello bit. \n"
这种由双引号( Double Quote )引起来的一串字符称为字符串字面值(String Literal ),或者简称字符串。
注︰字符串的结束标志是一个\0的转义字符。在计算字符串长度的时候\0是结束标志,不算作字符串内容。
字符数组
#include<stdio.h>
int main()
{
//字符数组 – 数组是一组形同类型的元素
//字符串在结尾的位置隐藏了一个\0的字符
//\0是字符串的结束标志
//char arr[] = "HELLO";
char arr1[] = "abc";
char arr2[] = { 'a','b','c' };
//打印字符串
printf("%s\n", arr1); //此处能打印出abc
printf("%s\n", arr2); //此处缺少结束标志\0,abc打印完后会出现一串别的字符
return 0;
}
数组的字符长度
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[] = "abc";
char arr2[] = { 'a','b','c' };
char arr3[] = { 'a','b','c','\0' };
//求一下字符串的长度
int len = strlen("abc"); //string length
printf("%d\n", len); //打印出的字符串长度为3,结束标志\0仅仅作为标志,不占用字符长度
printf("%d\n", strlen(arr1)); //打印出的字符串长度为3
printf("%d\n", strlen(arr2)); //打印出的字符串是随机值
printf("%d\n", strlen(arr3)); //打印出的字符串长度为3
return 0;
}
转义字符
#include<stdio.h>
int main()
{
printf("c:\test\test.c"); // 无法打印出双引号内的字符,因为\t有其他功能
return 0;
}
\t 转变了它原来的意思!
#include<stdio.h>
int main()
{
//printf("c:\test\test.c"); // 无法打印出双引号内的字符,因为\t有其他功能
printf("ab\ncd"); // \n是换行,打印出来是ab 换行 cd,无法打印成括号内显示的样子
return 0;
}
\n 起到了换行的作用!
转义字符有哪些
转义字符 | 释义 |
\? | 在书写连续多个问号时使用,防止他们被解析成三字母词 |
\' | 用于表示字符常量' |
\" | 用于表示一个字符串内部的双引号 |
\\ | 用于表示一个反斜杠,防止它被解释为一一个转义序列符。 |
\a | 警告字符,蜂鸣 |
\b | 退格符 |
\f | 进纸符 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符 |
\v | 垂吉制表符 |
\'
int main()
{
printf("%c\n",'\''); // 用\'才能打印出'来,否则直接输入'''会把前2个默认组成一组单引号
return 0;
}