ForNext
Only Do What Only You Can Do
079. 配列の受け渡し
VBScript
JScript
Perl
PHP
Python
Ruby
PowerShell
Scala
F#
C
更新日 : 2010.10.08
#include <stdio.h> #define NINSU 5 void int_set(int* vc, int no) { int i; for (i = 0; i < no; i++) vc[i] = i; } int main(int argc, char* argv[]) { int i = NINSU; int j; int ary[NINSU] = {0}; printf("関数 呼び出し前\n"); for (j = 0; j < NINSU; j++) printf(" ary[%d] = %d\n", j, ary[j]); int_set(ary, i); printf("関数 呼び出し後\n"); for (j = 0; j < NINSU; j++) printf(" ary[%d] = %d\n", j, ary[j]); return 0; }
R:\>lesson079\Project1.exe 関数 呼び出し前 ary[0] = 0 ary[1] = 0 ary[2] = 0 ary[3] = 0 ary[4] = 0 関数 呼び出し後 ary[0] = 0 ary[1] = 1 ary[2] = 2 ary[3] = 3 ary[4] = 4
C++
C++Builder
VC++
C#
Java
Objective-C
D
VB
VB.NET
Delphi
更新日 : 2010.09.24
program Project1; {$APPTYPE CONSOLE} uses SysUtils; procedure int_set(vc:PInteger; min: Integer; max: Integer); var i: Integer; begin for i := min to max do begin vc^ := i; Inc(vc); end; end; const NINSU = 5; var i: Integer = NINSU; j: Integer; ary: array[1..NINSU] of Integer = (0, 0, 0, 0, 0); begin Writeln('関数 呼び出し前'); for j := 1 to NINSU do Writeln(Format(' ary[%d] = %d', [j, ary[j]])); int_set(@ary, Low(ary), High(ary)); Writeln('関数 呼び出し後'); for j := 1 to NINSU do Writeln(Format(' ary[%d] = %d', [j, ary[j]])); end.
S:\>lesson079\Project1.exe 関数 呼び出し前 ary[1] = 0 ary[2] = 0 ary[3] = 0 ary[4] = 0 ary[5] = 0 関数 呼び出し後 ary[1] = 1 ary[2] = 2 ary[3] = 3 ary[4] = 4 ary[5] = 5