関数のパラメータが「int arr[]」または「int * arr」の場合、配列の値が変化することがわかりました。違いはどこにありますか?
整数配列[]:
void myFunction(int arr[], int size) {
for (int i = 0; i < size; ++i)
arr[i] = 1;
}
整数 * 配列:
void myFunction(int * arr, int size) {
for (int i = 0; i < size; ++i)
arr[i] = 1;
}
どちらの関数も配列値を変更します。
int main(){
int array[3];
array[0] = 0;
array[1] = 0;
array[2] = 0;
myFunction(array, 3);
return 0;
}