第9話 文字列処理の基礎

--------------------- 第9話 文字列処理の基礎 --------------------------


はじまり、はじまり~。


<文字列処理に基礎も応用もあるかい!>
どうどう。

<今まで散々やって来てますよね?>
まあね。

<いまさら何を?>
テキスト処理 = 文字列処理だからね。おさらいしておこうかと。

<もう勝手にやれば!>
何気に使っている文字列は他の言語では面倒な場合も多い。例えば

str = "ABC" がC言語では
strcpy( str, "ABC" ); となるコレはC言語の文字列は、「文字の配列」として実現されているからだ。

<めんどくさ!>
さすがにC++ではStringクラスで解消されているが、全体としてC/C++は文字列を扱うのが苦手だ。

いちいち関数やクラスを呼ぶことになり、速度低下を招く。コンパイラであっても文字列を多用すると大差がなくなる。
<なるほど。文字列を多用するアンタには不利ね>

だろ! だから色々探したりもしたのだが中々良いのが無くてねぇ。それより使えるもので見直しとこ。
C言語の標準では、Basic等で当たり前のMID,RIGHT,LEFTはもちろんない。

この辺はUWSCでも同様だが、UWSCのCOPY関数はMID関数と同じように使えるので、RIGHT,LEFTも組み合わせで
実現できる。C言語のstrncpyは先頭を変更できない。

<確かUWSCにはMID関数がないと言ってなかったっけ?>
細かいね。確かに無いだろ?

<COPY関数は?>
VBなどのMIDにはステートメントとして指定文字間を置換え出来る代入がある。

<ふ~ん。部分的に代用と言ったところか>
まあ十分だけどね。

<で、結論は?>
UWSCの文字列処理は意外に便利だね。大いに使いましょう。
他にtoken ,betweenstr,replace,formatなどもあるしね。

<妙にC言語にこだわっている節があるのは?>

標準言語と言える。MS製コンパイラ言語の中で唯一C/C++だけがネイティブコンパイラだからね。
<ネイティブコンパイラ?>

直接機械語を吐くコンパイラさ。速度重視ではどうしてもこだわざる得ない。でもコノ状況だから
マイナーな言語にも色々手を出しています。(詳細は省略するが)

<だから280倍速だったのかぁ>
アレは特別だけどね。

おっと、もう基礎編が終わっちゃうではないか!
<デへ♪>


----------------------------------------------------------------------

提供は: 「デへ♪」じゃないってば! Linersでした。

----------------------------------------------------------------------