robe的C语言学习笔记分享(1)

Everybody,今天Robe又来更新了鸭,充实的一天又过去了,不知道大家就今天又学习了什么新的内容,那么就开始我这几天的笔记整理吧!!!今天的内容虽然较简单,但也很重要哦。

(一)初始C语言(1)

1.字符串+转义字符+注释
1)字符串

由一对双引号引起的字符叫做字符串。
一对单引号引起的为一个字符。
字符产的结束标志为’\0’,且不算做字符内容。
关于结束标志的理解我们可以引入一个库函数来表示。
strlen即string length—求字符串长度,(记得头文件哦)
robe的C语言学习笔记分享(1)

robe的C语言学习笔记分享(1)

由这两幅图可以看出啊arr1*有四个字符且结束标志为’\0’,不算不做字符长度,所以结果的字符长度为3,而arr2没有结尾标识符所以他的长度为一个随机值。

2)转义字符

robe的C语言学习笔记分享(1)
这个板块主要注意进制之间的转换,了解转换的基本思路及注意事项即可。

3)注释

注释有/* */和//两类,前者是c的注释风格,后者是c++的注释风格,相比较来说,后者较前者实用性更强,前者最大的弊端是不能嵌套。而在各个编译器中会给出相应的快捷键,下面是笔者的vs13的注释界面。robe的C语言学习笔记分享(1)

2.语句

我们知道C语言是结构化的程序设计语言,其*内有许多的语句
|顺序结构|—|顺序语句|
|选择结构|—|选择语句|—if…else,\switch…case.
|循环结构|—|循环结构|—for、while、do while.
在此我们只是简单了解下,后面会细致地讲述。

3.数组

由字面理解就是一组数。
注意:数组的存储是一组连续的空间,且第一个数的下标为0。robe的C语言学习笔记分享(1)

4.操作符

一、算术操作符。

首先了解一下算术标识符都有哪些:+、-、*、/、%。
这些运算符都是最基础的操作符,不做过多介绍。但要注意“%”只能用于整型。
二、移位操作符。

移位操作符有两种:>>(右移操作符)、<<(左移操作符)。
特别注意右移操作时分为两种情况:
1、算术右移;
2、逻辑移位。
算术右移情况指的是:二进制数有正负之分,补位时要注意符号位;
逻辑移位情况指的是:不需要考虑符号产生的问题,直接补0即可。
下面给出一段代码举例:
#include<stdio.h>
int main()
{
int a = 10;
printf("%d\n", a >> 1);
system(“pause”);
return 0;
}
它的结果输出是5。 这里需要特别注意:
1、移位操作符不能直接赋值改变变量。如果需要改变变量需要这样输入:a>>=1;
2、左移操作相当于/2;右移操作相当于*2。
三、位操作符。
位操作符包括:&(按位与)、|(按位或)、^(按位异或)。
这三个操作符也非常简单,在前面的交换两数内容时有提到过用法。
需要注意的是,这三个操作符操作的必须是整数。
四、赋值操作符。

赋值操作符在之前的程序代码中经常出现,其操作符有:=、+=等。
注意在连续赋值时,应从右往左赋值,例如:
a=x=y+1;
输出时a的值就应是y+1。
五、单目操作符。
单目操作符有:!(逻辑反操作、非)、&(取地址符)、sizeof(求长度)、~(按位取反)、++、–、*、(类型)等。
需要注意的是:
1、&是取地址符,%p打印地址。
2、sizeof()是操作符,不是函数!
3、++的前置和后置。举例说明:
#include<stdio.h>
int main()//++后置
{
int a = 10, b = 0;
b = a++;
printf(“a=%d,b=%d\n”, a, b);
system(“pause”);
return 0;
}
得到的结果:a=11,b=10。

#include<stdio.h>
int main()//++前置
{
int a = 10, b = 0;
b = ++a;
printf(“a=%d,b=%d\n”, a, b);
system(“pause”);
return 0;
}
得到的结果:a=11,b=11。
4、*在这里是间接访问操作符,主要和指针相关。
5、(类型)为强制类型转换操作符,例如强制将浮点型数转化成整型数时:
#include<stdio.h>
int main()
{
int num = 0;
float f = 3.14;
num = (int)f;
printf(“num=%d\n”, num);
system(“pause”);
return 0;
}
这里输出的结果:num=3。
六、关系操作符。

关系操作符主要是:==、>=、<=。
主要出现在条件的比较判断上,如:if语句、for循环等。
七、条件操作符。

1、exp1 ? exp2 : exp3 ;
举例解释一下上述语句:
int main()
{
int a=10, b=0;
if (a > 5)
b = 3;
else b = -3;
printf(“b=%d\n”, b);
system(“pause”);
return 0;
}
当a=10时,通过if的条件判断后,b的值为3。
当a=-10时,b的值为-3。
如果用上述语句即可表达成:
#include<stdio.h>
int main()
{
int a=10, b=0;
b = a > 5 ? 3 : -3;
printf(“b=%d\n”, b);
system(“pause”);
return 0;
}
两种方式得到的结果是一样的。
2、exp1 , exp2 , exp3

举例解释:
#include<stdio.h>
int main()
{
int a=1, b=2;
int c = (a > b, a = b + 10, a, b = a + 1);
printf(“c=%d\n”, c);
system(“pause”);
return 0;
}
逗号条件句的运算规则是从左往右依次运算,其结果是最后一个表达式的结果。
结果输出是c=13。
八、其他操作符。

1、下标引用操作符 [ ] :多见于数组。例如:arr[2]。
特别注意:arr[2]与*(arr+2)是等价的。
2、函数调用操作符 ( ) :这个操作符十分常见,不做过多解释。
3、结构成员访问操作符 . 和 -> :多见于结构体中。在后续的数据结构的复习中我们在详细介绍。

5.总结

今天的内容,记忆和理解占主要学习的内容,希望大家在自己的电脑上试着敲出代码理解一下,好了,美好的一天又过去了,如果喜欢笔者的笔记记得给一波关注哦,886.

上一篇:GC 设计与停顿


下一篇:十大豪门推送sdk,哪个更适合你