堆分配存储表示二、文本编辑基本原理
图一
文本编辑可以用于源程序的输入和修改(如图一),也可用于报刊和书籍的编辑排版以及办公室的公文书信的起草和润色(如图二)。图二
可用于文本编辑的程序很多,功能强弱差别很大,但基本操作是一致的:都包括串的查找,插入和删除等基本操作。对用户来讲,一个文本(文件)可以包括若干页,每页包括若干行,每行包括若干文字。对文本编辑程序来讲,可把整个文本看成一个长字符串,称文本串,页是文本串的子串,行又是页的子串。为简化程序复杂程度,可简单地把文本分成若干行。例:下面的一段源程序可以看成一个文本串,main(){float a,b,max;scanf("%f,%f",&a,&b);if (a>b) max=a;else max=b;}; |
m | a | i | n | ( | ) | { | f | l | o | a | t | a | , | b | , | ||||
m | a | x | ; | s | c | a | n | f | ( | " | % | f | , | % | f | " | |||
, | & | a | , | & | b | ) | ; | i | f | a | > | b | m | ||||||
a | x | = | a | ; | e | l | s | e | m | a | x | = | b | ; | |||||
} |