名前 題名 ▼ Mr.XRAYさん > 本当にゴメンナさい. > Char 型の動的配列の初期化のコード,間違えていました. > Pointer を使用する説明を書いておこう思ってコードを眺めていて気づきました. > みんな私が悪いんです.みんな私のせいなんです. > > //============================================================================= > // Char型の動的配列の初期化の確認 > // 正しいコード > //============================================================================= > procedure TForm1.Button1Click(Sender: TObject); > var > LString : String; > LpBuffer : TCharArray; > LText : string; > LIndex : Integer; > begin > Memo1.Lines.Clear; > > LString := '日本語 ABC'; > LpBuffer := LString.ToCharArray; > > FillChar(Pointer(LpBuffer)^, Length(LpBuffer) * SizeOf(Char), #0); > > for LIndex := 0 to Length(LpBuffer) - 1 do begin > LText := IntToStr(LIndex) + ' : ' + LpBuffer[LIndex]; > Memo1.Lines.Add(LText); > end; > end; > > //============================================================================= > // Char型の動的配列の初期化の確認 > // FillChar関数の使用方法が間違っているコード > //============================================================================= > procedure TForm1.Button2Click(Sender: TObject); > var > LString : String; > LpBuffer : TCharArray; > LText : string; > LIndex : Integer; > begin > Memo1.Lines.Clear; > > LString := '日本語 ABC'; > LpBuffer := LString.ToCharArray; > > FillChar(Pointer(LpBuffer)^, SizeOf(LpBuffer), #0); > > for LIndex := 0 to Length(LpBuffer) - 1 do begin > LText := IntToStr(LIndex) + ' : ' + LpBuffer[LIndex]; > Memo1.Lines.Add(LText); > end; > end; > > GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link