FreeBASIC マニュアルのトップに戻る

FreeBASIC Sadd

目次→実行時ライブラリー参考→メモリ関数SADD←オリジナル・サイト

SAdd 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい


文字列変数のデータへのポインタを、返します。
StrPtr と同じで、StrPtr の方が意味との相関で使い易いと思います。

構文:
declare function SAdd ( byref str as string ) as Zstring ptr
declare function SAdd ( byref str as Wstring ) as Wstring ptr
declare function SAdd ( byref str as Zstring ) as Zstring ptr

用法:
result = SAdd ( str )

パラメタ:
str
アドレスを取得する、文字列式か変数

戻り値:
str に関連付けられたデータへのポインター。

記述:
文字列変数の文字列データの、メモリ・オフセットを返します。

例1:
Dim s As String

Print "SAdd(s)= ", SAdd(s)
Print "StrPtr(s)= ", StrPtr(s)

s = "こんにちは"
Print "SAdd(s)= ", SAdd(s)
Print "StrPtr(s)= ", StrPtr(s)

s = "abcdefg, 1234567, 54321"
Print "SAdd(s)= ", SAdd(s)
Print "StrPtr(s)= ", StrPtr(s)

Sleep


例2: ポインタ演算子で取得する値
Dim As String alphab = "ABCDEFGHIJ"

Print "文字列     " ;"SAdd ポインタ " ;"StrPtr ポインタ ";"VarPtr ポインタ ";"@ ポインタ"
'Print "String", "SAdd", "StrPtr", "VarPtr", "Address of"

For i As UInteger = 0 To 9
   Print Chr(alphab[i]), SAdd(alphab), StrPtr(alphab), VarPtr(alphab[i]), @alphab[i]
Next
Print

Dim ArrayStr(15) As String
Dim i As Integer
Dim Counter As Integer

Counter = 0

Print "文字列     " ;"SAdd ポインタ " ;"StrPtr ポインタ ";"VarPtr ポインタ ";"@ ポインタ"
'Print "String", "SAdd", "StrPtr", "VarPtr", "Address of"

For i = Asc("A") To Asc("Z")-15
   Counter = Counter + 1
   ArrayStr(Counter) = Chr(i, i+1, i+2, i+3, i+4)
   Print ArrayStr(Counter) ,SAdd(ArrayStr(Counter)) ,StrPtr(ArrayStr(Counter)) ,VarPtr(ArrayStr(Counter)) ,@ArrayStr(Counter) 
Next i

Sleep


QBからの違い:
参照:
メモリ関数に戻る
←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2019-09-29 07:23:22
日本語翻訳:WATANABE Makoto、原文著作者:SysOp

ホームページのトップに戻る

表示-非営利-継承