私は Pascal から C への移植に取り組んでいますが、文字列の処理における 2 つの言語の違いがイライラする問題になっています。
A
サイズの Pascal 文字配列を宣言し、x
それを入力引数として、サイズ xz (z は正の整数) の文字配列 B として定義された入力パラメーターを持つ関数に渡すと、パスカルは関数内に入るとどうなりますか? ? 配列 A は切り捨てられ、B は関数内でサイズが xz であるかのように扱われますか?
元のソースの書き方を見ると、こういう仕組みのようですが、私は Pascal に詳しくありません。
コードは独自のものであるため投稿できません。また、パスカルの構文についてもよく知りません。ただし、次のようなものになります。
type1 string[22]
type2 string[10]
//Function definition
function(type2 in)
//Do stuff to the array
print(in)
//Function call
type2 temp = "This is a string of 20"
function(inputString)
構文エラーがある可能性があります
(* Types *)
type24 = packed array[1..24] of char;
type40 = packed array[1..40] of char;
(* Variable declaration *)
line : type40;
(* Function prototype *)
foo(var contents : type24) : boolean;
(* Function call *)
if ( foo(line) )
begin
end