C语言 字符串 转义字符 注释

目录

字符串 —— 就是一串字符,用“”(英文双引号)引起来的

转义字符 —— 转变了它原来的意思 

注释 —— 用来解释复杂代码的


字符串 —— 就是一串字符,用“”(英文双引号)引起来的

注意:字符串的结束标志是 \0 的转义字符,字符串在结尾的位置隐藏了一个\0的字符,\0 仅仅是结束标志,在计算字符串长度的时候 sizeof() 是包含进去的,求数组的元素个数 strlen() 的时候是不算进去的。

举例1:

 手动在  { 'a', 'b', 'c'} 后面加结束符 \0

#include<stdio.h>
int main(void)
{
	char arr1[] = "abc";
	char arr2[] = { 'a', 'b', 'c', '\0'};

	//打印字符串

	printf("%s\n", arr1);
	printf("%s\n", arr2);

	return 0;
}

运行结果:

abc
abc

举例2:

#include<stdio.h>
int main(void)
{
	char arr1[] = "abc";
	char arr2[] = { 'a', 'b', 'c'};

	//打印字符串的长度

	printf("%d\n", strlen(arr1));  // string lenth
	printf("%d\n", strlen(arr2));

	return 0;
}

运行结果:

 转义字符 —— 转变了它原来的意思 

 ASCII码表:每一个字符都有一个值 —— ASCII值 

转义序列字符值在输出设备上的动作
\’单引号输出字符
\"双引号输出字符
\?问号输出字符
\\反斜线输出字符
\a警告产生声音或者视觉信号 ,windows报错声音
\b退格前移一个字符
\f换页移动到下一页的开端
\n换行移动到下一行开端
\r回车移动到当前行开始
\t水平制表符移动到下一个垂直的制表对齐点
\v垂直制表符移动到下一个垂直的制表对齐点
\ddd 1-3个八进制的数字输出字符,如:\130  输出X
\xdd 2个十六进制数字输出字符,如:\x30  输出0

\ddd     ddd表示1-3个八进制的数字。如:\130   X

\xdd      dd表示2个十六进制数字。     如:\x30   0

举例1:

举例2:

练习题:程序输出什么?

#include<stdio.h>
int main(void)
{
	printf("%d\n", strlen("c:\test\328\test.c")); 
	
	return 0;
}

答案:14

解析:求 c:\test\328\test.c 字符串长度,\t 算一个字符,\32算一个字符,8算一个字符,所以总共有14个,为什么 \328 算2个字符?因为 \ 后面没有 x ,不符合 \xdd 格式,所以 \ 后面跟的是八进制的数字,符合 \ddd 格式,八进制里面没有 8,所以 \328 算 \32 和 \8 两个字符。

printf在打印的时候可以指定打印格式

#include<stdio.h>
int main(void)
{
	//printf在打印的时候可以指定打印格式
	
	printf("%d\n", 100);      //打印整数  输出 100
	printf("%c\n", 'a');      //打印字符  输出 a
	printf("%s\n", "abc");    //打印字符串 输出 abc

	return 0;
}

注释 —— 用来解释复杂代码的

#include<stdio.h>
int main(void)
{
	//int a = 10;  //C++注释风格 可以注释一行也可以注释多行 
	
	/*
	int b = 0;
	*/             //C语言的注释风格 —— 不支持嵌套注释

	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值