初识C语言

目录

  • 一、字符串
  • 二、转义字符
    • 1.转义字符\’ ---用于表示字符常量'
    • 2.转义字符\ " ---用于表示一个字符串内部的双引号
    • 3.转义字符\\\ ---用于表示一个反斜杠,防止它被解释成一个转义序列符
    • 4.转义字符\a ---警告字符,蜂鸣
    • 5.转义字符\b ---退格符
    • 6.转义字符\ddd ---d d d表示1~3个八进制的数字。如:\130表示字符X
    • 7.转义字符\xdd--- d d表示两个十六进制数字。如:\x30表示字符0
  • 三、注释

一、字符串

“hello world”
‘c’
这种由单、双引号引起来 的一串字符称为字符串字面值,或者简称字符串。为什么要用引号引起来呢—这是为了区别我们定义的变量名称,例如:我们定义了int a,而下面我们要用a作为一个字符,如果不用单双引号去区分,计算机不会知道你想应用的是什么,计算机就会默认你使用的是你定义的a的数值

我们在使用字符串的时候有多重定义方式,其中也有许多细节需要注意#include

#include
#include
int main()
{
char ch1 = 'a'; 
char ch[] = {'a', 'b', 'c', 'd', 'e', 'f'};
char ch2[] = "abcdef";
printf("%s\n", ch);  
printf("%s\n", ch2); 
char ch1[] = { 'a', 'b', 'c'};
char ch2[] = "abc";            
int len1 = strlen(ch1);
printf("%d\n", len1);   
int len2 = strlen(ch2);  
printf("%d\n", len2);
return 0;

初识C语言_第1张图片

strlen是头文件包含的函数,是用于查询字符串
的长度的函数。
而在以上的代码里面,我们定义了ch和ch2两个字符数组而且定义的都是一样的,但是为什么在ch和ch2输出的内容不一样而且下面使用strlen函数时为什么其输出的结果也不一样呢?
这就是我们需要注意的问题,当我们定义ch时,我们用一个一个字符去存储,当我们定义ch2时我们采用的是字符串的形式,系统会默认存储了一个\0,\0是字符串的结束标志。
所以我们在输出ch的时候没有\0,那么在输出的时候就会连这输出存储ch空间的后面空间的内容,直到遇见\0为止,那么就会出现乱码,而ch2就不会出现这种情况。
初识C语言_第2张图片

当我们将代码改为
char ch[ ] = {a,b,c,d,e,f,\0}
就不会出现类似问题了,也就是说这种定义方式需要我们去自己加上终止\0

二、转义字符

转义字符 — 转变原来意思
转义字符主要有

\?         在书写连续多个问号时使用,防止他们被解析成三字母词
(三字母词是:出现??)就会转变成],以前老版本会出现,现在有的编译器会出现但很少,)
\'         用于表示字符常量'
\"         用于表示一个字符串内部的双引号
\\         用于表示一个反斜杠,防止它被解释成一个转义序列符
\a         警告字符,蜂鸣
\b         退格符
\f         进纸符
\n         换行
\r         回车
\t         水平制表符
\v         垂直制表符
\ddd       d d d表示1~3个八进制的数字。如:\130表示字符X
\xdd       d d表示两个十六进制数字。如:\x30表示字符0

1.转义字符\’ —用于表示字符常量’

初识C语言_第3张图片

2.转义字符\ " —用于表示一个字符串内部的双引号

初识C语言_第4张图片

3.转义字符\\ —用于表示一个反斜杠,防止它被解释成一个转义序列符

初识C语言_第5张图片

4.转义字符\a —警告字符,蜂鸣

就是一个警告,电脑会发出蜂鸣

5.转义字符\b —退格符

初识C语言_第6张图片

6.转义字符\ddd —d d d表示1~3个八进制的数字。如:\130表示字符X

初识C语言_第7张图片

2进制使用0~1来表示 遇2进位
8进制使用0~7来表示 遇8进位
10进制 —0~9
7进制 —0~6(使用很少)
16进制是使用 0~9 加上 a~f 来表示

这些进制就是用来存储数据的一种方式,将数据以进制的方式存储在内存。
计算机默认使用就是二进制的,那我们怎么去存储字符呢?
字符不方便存储,我们就用了ASCII码,每一个ASCII码表示一个字符

下面就是ASCII码的表格
初识C语言_第8张图片

现在让我们在程序里体验一下用法

#include 
int main()
{
	printf("%c", '\133');
	//8进制的130 转换成10进制后得到88,把88作为ASCII值代码的字符
	return 0;
}

输出的结果正好是133转换成十进制后得到了88,在ASCII码表中我们可以看到对应的就是 [ 符号
初识C语言_第9张图片

7.转义字符\xdd— d d表示两个十六进制数字。如:\x30表示字符0

其转换规则和上面的类似,是将30两个十六进制的转化为10进制的ASCII码值,再将这个对应的数值打印出来

三、注释

C语言注释通常以双斜杠(//)打头,也可以使用(/)打头(/)结尾来实现注释。注释是程序员为读者提供的说明,通常标识程序的一部分或者解释代码的某个方面。
以//注释的时候以//打头,到行尾结束。注释可以位于单独的一行,也可以和代码位于同一行。
以/*打头的注释包括在符号/ * 和 * /之间,而不是行尾结束,因此可以跨越多行。

提示:应使用注释来说明程序。程序越复杂,注释的价值越大。注释不仅有助于他人理解这些代码,也有助于程序员自己理解代码,特别是隔了一段时间没有接触该程序的情况下。

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

int main()
{
以//开头的注释是属于C++注释风格
//注释
//strlen是一个库函数
//计算的是\0之前出现的字符的个数
//
/*
int a = 10;
/
/

* C语言注释风格 - 不支持注释嵌套
* 下面代码是创建一个整型变量并赋值0
*/
int b = 0;
return 0;
}

你可能感兴趣的:(c语言,c++,开发语言)