ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月29日(金) 02:53

全ての表示時間は UTC+09:00 です




返信する
ユーザー名:
件名:
メッセージ本文:
メッセージを入力してください。60000 字まで入力できます。 

フォントサイズ:
フォントカラー
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: OFF
BBCode を無効にする
URL を自動的にパースしない
クイズ
お手数ですがカタカナで「エービー」と4文字を入力してください。:
答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。
   

トピックのレビュー - 自己表示プログラム
作成者 メッセージ
  記事の件名:   引用付きで返信する
私も以前やりました:自分自身を出力するプログラム
ただ、当時のAB5用なので、今のAB5ではできませんでした。
というわけで修正版です。
コード:
#console
Dim s = "Print Ex'#console\r\nDim s = \q' + s + Ex'\q, t = \q' + t + Ex'\q' : Print s.Replace(Asc(t), Asc(Ex'\q'))", t = "'"
Print Ex"#console\r\nDim s = \q" + s + Ex"\q, t = \q" + t + Ex"\q" : Print s.Replace(Asc(t), Asc(Ex"\q"))
AB4は文字列置換のサブルーチンがないのがつらいです。上のコードをAB4.24に移してみましたが、まだReplaceChrサブルーチン部分を出力しない不完全な出来です。
コード:
#console
Sub ReplaceChr(ByRef s As String, oldChar As Byte, newChar As Byte)
	Dim i As Long
	For i = 0 To Len(s) - 1
		If s = oldChar Then s = newChar
	Next
End Sub
Dim s As String, t As String
s = "Print Ex'#prompt\r\nDim s As String, t As String\r\ns = \q' + s + Ex'\q\r\nt = \q' + t + Ex'\q' : ReplaceChr(s, Asc(t), Asc(Ex'\q')) : Print s"
t = "'"
Print Ex"#prompt\r\nDim s As String, t As String\r\ns = \q" + s + Ex"\q\r\nt = \q" + t + Ex"\q" : ReplaceChr(s, Asc(t), Asc(Ex"\q")) : Print s
投稿記事 Posted: 2008年6月01日(日) 11:11
  記事の件名:  自己表示プログラム  引用付きで返信する
自己表示プログラムを書いてみました4.23で動作を確認しました。

どうやら定数文字列の文字数に何らかの制限がある模様で、それの回避に苦労しました。

誰かもっと短い奴か、又は異なる方法を用いた奴書いてください(メモリリークを無視するような短縮方法は遠慮してください)
投稿記事 Posted: 2008年5月31日(土) 16:59

全ての表示時間は UTC+09:00 です


ページ移動:  
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean