00:00
同学们,我们来学习一下。一些常用的系统函数。前边呢,我们讲的函数啊,都是程序员自己自己定义的函数,也就是说用户自定义函数。那么有一些函数呢,实际上是我们在程序开发中使用的非常的多,因此呢,C语言的设计者就给我们提供了一些标准库函数,这些函数呢,我们不需要自己去写,直接拿来使用就可以了。我重点给大家介绍这么几个,一个呢就是字符串中常用的系统函数,还有就是数学相关的常用函数,还有就是时间相关的系统函数,我们先来给大家讲一下字符串相关的系统函数,那首先我们看有哪些哈。呃,这里面有个手册,同学们还记不记得我曾经给大家提供一个C标准库那一个文件,那个文件里面呢,有很多的头文件,这个头文件里面就定义了我们经常使用的系统函数,我们来看一下与字符串相关的系统函数有哪些。打开我们的。
01:10
这个。资料。资料里边有一个C标准库参考手册。与字符串相关的系统函数在哪里呢?给大家看一下在这里。对,在这里呢,定义了各种操作字符数组的函数有这么多。从这里开始,都是它的系统库函数很多,对吧,常用的大概有22个,那么这22个呢,我就不一个一个的讲了,我重点挑几个常用的给大家讲一下,其他的呢,用法非常的类似,大家可以根据下面的注解,或者说在我们开发中用到的时候来查这个手册,就能很快的掌握。那现在呢,我这里给大家举几个常用的,第一个呢,得到字符串的长度,也就是说我给你一个字符串。
02:01
然后呢,你把这个字符串的长度给我获取到。那么第二个呢,就是拷贝字符串,比如说我这里有一个字符串,那字符串呢,可以用指针来指向,后面我们还会讲。把这个字符串的内容呢,拷贝到另外一个字符串里面去,就叫拷贝字符串,还有一个就是字符串的连接,比如说我们在实际开发中,我们可能会将某一个字符串,比如说这个字符串。的内容。干什么呢?拷贝到另外一个字符串中。这这个其实就是连接,不是前面这个拷贝和下面这个拷贝不一样,上面这个拷贝呢,它是把这个直接拷贝到DST里面去,那原先它有的东西呢,就会被覆盖,而这个string t呢,它是在后面,在这个字符串后面加,因此呢,它就是一个连接的形式,那这样子同学们,我直接给大家看这么几个函数的使用,好吧,好OK,打开这里我们来玩一下。
03:05
把这些不用的。啊,我们先把它注销一下好不好。因为不注销,咱们没法测试。各位,现在呢,我们来新建一个文件,就是字符串相关的函数,我写一个文件名字string function,好吧?那这里呢,我们就专门讲跟字符串相关的一些函数的使用。咱俩去在这儿。把这个后缀改一下。然后呢,我们来简单的使用使用include。STDIO。因为我们这边用的是字符串相关的函系统函数,因此呢,我们还需要引入它的一个头文件叫H。有这个头文件里面呢,头文件中。啊,声明了,声明了字符串相关相关的系统函数。
04:01
OK,那这个明白就可以了,然后呢,我们来玩一把,来用一用体验一下。我把它格式化一下。同学们看到这里是SRC50DST50,这个是我们定义了两个。哎,两个什么呢,两个字符数组。其实就可以当自助餐使用。那么它的大小是多少呢?大家可以看到大小为50。好,后面关于字符数组我们还要详讲好不好,这里就先体验一下,大家可以看到这里呢,我有一个字符串ABCDFF,用string子向那下面看这边的代码,我们先把它注销一下各位。我一个一个的跟大家测试。同学们看这里呢,使菌内把使卷放进去,这个就是用于统计。统计字符串的大小。
05:03
那大家可以看到我现在一共有几个字符呢?一个两个三个四个五个六个,因此呢,它如果运行的话,就应该返回六,看一下是不是六。我们运行,我们发现呢,它返回就是一个六对的,好,第一个我们就说完了,我们再来看下一个函数。这个函数是干什么呢?大家可以看到一个string copy,这个代表把hello,注意这一个空格啊,这个空格我往里面什么呢?把hello拷贝到src这个字符串中去,这句话表示。将哪一个呢?将hello这个字符串拷贝到哪里去呢?Src。好,那如果说这样子的话,我们可以来运行一下了。我给大家输出一下这个HRC。看看它到底是什么样子的哈,来朋友们运行一下。怎么输出一个字符串呢?很简单,这样输出就可以了,是src,百分号S,然后这边我们写上src。
06:07
可以了,这样一运行呢,就会输出hello,也就是说此时此刻原先这个abcdff被覆盖了,注意这个拷贝有一个地方需要同学们注意,拷贝会拷贝字符串。会将会将原来的原来的内容怎么样啊覆盖掉。这点大家明白吗?你看啊,原原先这个如果有的话,它会覆盖掉,它会覆盖掉的。好,我们先写到这,先写到这啊,这是RSRC,这是一个新的,这是这个,你看这是一这个,呃,这个我没有赋值是吧,原因本身就是空的,我拷贝进去可能也是hello,运行一下。跑起来。那么跑起来过后呢,我们可以看到这边是不是hello啊,那有些同学说老师你给他负一点值看看行不行呢?大家看,如果我初始化来个ABC。
07:03
ABC,那么嗯,那我现在把hello拷给src,这个ABC还有吗?我们来运行一下。我们来运行一下同学们。走起来,他原先有ABC,是不是现在呢,我拷了个hello过去,你发现呢,原先那个也没有了,说明呢,拷贝会将原来内容覆盖掉,好,这个就说完了,紧接着来看下面这个。下面这句话应该理解什么意思了吧?下面是不是把上硅谷拷贝到det,拷贝到DT去?好,这句话我就不注释了,下面这句话来理解一下,大家知道这句话什么意思吗?这句话。这个string k啊是指的是将src。这个字符串。的内容,内容干什么呢?内容哈,内容拷贝到,拷贝到哪里去呢?或叫追加,最好叫追加或叫连接啊,不要拷贝连接到。
08:07
Deskt去。但是注意听,但是不是不会覆盖,但是不会覆盖。诶,不会覆盖这个DST原有的内容,原有的内容。而是什么呢?而是追加或者叫做连接,注意听啊,而是连接,这点是同学们一定要注意的,那这样子的话呢,同学们看原先呢,DST有上归骨了,这个src呢是hello,因此呢,这边整个就变成了什么呀,Hello。Hello,上硅谷是这意思吧?好,我们输出一下。那最后呢,我们输出最终的目标字符串,我这故意这样用,用一个把它隔开的啊,就是用两个竖杠隔开的,这样我能看到里面到底是什么内容。但是有些人说我不想隔开也可以啊,你这样写也行,比如说比如说det。
09:00
Det等于好,这样一样可以看到,那DT等于什么呢?就应该等于hello,上硅谷来运行一下。同学们挺简单的,这个题对不对?好,各位同学请看,运行过后就应该上硅谷哈,上硅谷哈,这个就是所谓的连接,那这几个呢,是我们经常使用到的,统计它的大小,拷贝连接,连接哈,这个使均K是连接,那至于在我们这里面还有一些其他的这些函数呢,有些我们后面会用到,再说有一些呢,老师没有说到的,你们照着它的一个解释,其实很容易理解,非常容易理解哈,像这个是不是都已经讲过了,使俊。Compare是不是这个都讲过了,对,是均啊,这个这个时均compare是比较,所以写过返回,零表示相等,非零表示不相等,是不是都讲过了,有些没有没没有说到的呢?同学们自己查一下手册,也会非常轻松的将其掌握。
10:00
好,同学们,那关于这一个字符串中常用的系统函数,就给大家讲解到这里。
我来说两句