作业和程序里的问题
日期 内容
11月7日 有关课程实习的几个问题(某同学通过email提出了几个问题)

裘老师:你好!
我在做实习作业时遇到了一些问题不是很清楚,希望您能帮忙看一下:

1) l n 是把某个内容作为第n行插入文本,可是,如果文章的行数小于 n-1 行,那么,我们还要不要插入?如果要,那就是前面还会空出几行了?

答:这个问题与在线性表里超出位置的插入一样。可参考那里的想法

2) s n s1 s2 是把两个字符串的替换,如果替换后,该行的字符多于 80(我设定每行最多 80 个字符),那是报错还是说另起一行?

答:任何合理的处理都可以,只是需要考虑这一情况

3) 关于这个程序的健壮性问题,我不是很清楚究竟要考虑到什么程度。

答:并没有特别要求,你可以根据情况自己考虑

10月17日 一个双链表操作函数
10月17日 16日有位同学来找我,说程序里有查不出的错误。经过检查,最后都查清了,主要都是C语言本身的使用问题。其错误都表现在下面程序段里:
int main () {
    char a[3] = {'i', 'n', 'g'};
    char b[5] = {'r', 'e', 'v', 'i', 'n'};
    char *p, *q;
    p = &a;
    q = &b;
    PSeqString s1 = CreateString(p);
    PSeqString s2 = CreateString(q);
    ... ...
}
首先这个程序编译无法通过,有许多错误。排除后程序运行中还会出现非法访问错。最后弄清楚了,这些错误的根源都在上面几行里。大家先看看想想这其中有哪些问题。如果你没有看出,请看看这里的说明
本页及相关页面(除另声明者外)由裘宗燕创建维护,可自由用于各种学习活动。其他使用需得到作者许可。