C言語では通常の関数の使い方ではreturnによって複数の変数を返すことはできない。こういう時はポインタを使えばうまくいく。
#include <stdio.h>
void test(int a, int* p1,int *p2);
void main(void) {
int result1,result2;
test(5, &result1,&result2);
printf("%d,%d",result1,result2);
}
void test(int a,int* p1, int* p2) {
*p1 = a + 1;
*p2 = a - 1;
}
コメント