RPGLE の単一文字を整数に変換する方法が必要です - 誰か良い方法を知っていますか? 可能なすべての入力に対して機能し、理想的には入力ごとに異なる整数を提供する必要があります。少なくとも、すべての共通入力に対して異なる値を提供する必要があります。整数が何であるかは特に気にしません。C のような言語では、ASCII 値などを使用します。理想的には、それに相当する値が必要です。
どのように機能させたいかを明確にする例:
characterData = "Hello";
for i = 1 to %len(string);
singleCharacter = %subst(characterData:i:1);
number = myFunction(singleCharacter);
dsply 'The value of ' + singleCharacter + ' is ' + %char(number);
endfor;
これは印刷されます
H の値は 72 e の値は 101 l の値は 108 l の値は 108 o の値は 111
ただし、実際には数字が何であるかは気にしないことに注意してください。数字は入力ごとに異なるだけです。
これらはすべて、RPGLE で文字データのハッシュ関数を作成するのに役立ちます。そのため、それを行う良い方法を知っていれば、それがより良い答えになります。