I want to do something with array A in function B. In function B, some value of A is changed. I know that because A is a pointer so its values will be changed after B is executed. So that I have to use C which is a copy of A to make sure that A aren't changed after B is executed.

I am wonder that is there any other way that I don't have to use the array C?