这次作业中,我照着模板编了这些代码,并且借助它来提升我对指针这一概念的理解。以下是我对这些功用的理解:
1.可以看到,首先被封装的是mystrcat函数,它的作用是将一串字符添加到另一串的结尾。首先,函数将指针变量dst定义到了指针p,这一操作的目的应该是防止dst变量无意义或值为零,因此之后用了一个while语句来确定指针p是否为空,如果为空,那么就要对p使用加法,这里用加法应是增加字节数,以添加字符串src。如果指针p并非无意义,那么第二个while语句就会通过等于号将指针p和指针src相连,从而将字符src添加到字符dst的结尾。
2.接下来的mystrcpy函数,它的作用是拷贝、复制。这里dst是储存地址,src是输入字符串,此函数用while语句将src字符串转移到dst中,完成数据的转移,并且src字符串本身没有被改变。
3.mystrcmp函数的作用是比较字符串大小。它的总体思路是,无法用数学的等于号来表示字母,那么就将两个值分别用指针指向固定地址,再进行比较。 除此之外,此函数还用了一个if语句,考虑到了两个字符串都无意义的情况。
4mystren函数,其作用为测量字符串的长度,像第一个函数一样,首先将dst指向指针p,之后用p-dst 直接表示出dst字符串的长度。
由这四个封装函数可以看出,指针的作用在于将数值存于指定的地址,从而将程序不同部分的数据共享。并且在指针中的数据可以进行各种各样的操作,使得程序更加简便。
以上是我对本次作业的心得和理解,由于纯粹自学,想必知识点有许多失误以及疏漏,请谅解。