tbasic forum
掲示板 => Tiny Basic for Windows => スレッド開設者: akane3 より 2014年 8月 02日 , 午前 06:45:40
-
素敵なソフトウェアをご提供いただきありがとうございます。
先日気が付いたのですが、InStr(6, "abcde abcde", "cd")は、Visual Basicでは9となるのに対し、Tiny basicでは4となります。
関数の仕様は「文字列A$のn番目からの文字から,文字列B$を探し,見つかればその位置を開始位置からの半角文字数で与えます。見つからない場合0を返します。」です。「開始位置」の意味が、Visual Basicなどでは「文字列の開始位置」であるのに対し、Tiny basicでは「検索の開始位置」となります。互換性は損なわれるものの、Tiny basicの仕様の方が使いやすい面はあります。ただ、分かりにくいので、単に「開始位置」ではなく「検索の開始位置」と書いていただいた方がはっきりすると思います。
なお、例に挙げられている
A$= "tbasic"
B$ = "in"
s = InStr(1,A$,B$)
t = InStr(2,A$,B$)
u = InStr(3,A$,B$)
を実行すると,
s = 2, t = 1, u = 0
となります。
は意味不明で、B$ = "b" ではないでしょうか?
-
akane3 さま
ご指摘有難うございます。
VBとの仕様の違いご指摘の通りです。実は細かい点で色々微妙に違っています。
説明が分かりにくさのこと,また,例での誤り,ご指摘の通りでした。
ご指摘の点,「Tiny Basic for Windows 入門」文書を早速修正しアップしました。
http://www.tbasic.org/tutorial/201408IntroToTbasic.pdf
どうも有難うございました。
よく見たら当該箇所に別な不適切な文章がありました。
「半角文字数で与えます。」→「文字数で与えます。」
これも修正しました。