codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <cstdio> #include <cstdarg> const int N1=128; const int N2=128; double **new_memory(int N1,int N2) { int i; double **p=new double*[N1]; for(i=0;i<N1;++i){ p[i]=new double[N2]; } return p; } void delete_memory(double **c,int N1) { int i; for(i=0;i<N1;++i){ delete [] c[i]; } delete [] c; } void setArray(int dummy,...) { va_list pointer; double ***p; va_start(pointer,dummy); p=va_arg(pointer,double***); *p=new_memory(N1,N2); va_end(pointer); } void freeArray(int dummy,...) { va_list pointer; va_start(pointer,dummy); delete_memory(va_arg(pointer,double**),N1); va_end(pointer); } int main(void) { double **p; // double **q; setArray(1,&p/*,&q*/); for(int i=0;i<N1;++i){ for(int j=0;j<N2;++j){ p[i][j]=i*N2+j; // q[i][j]=i*j; } } printf("%f\t%f\n",p[N1-1][N2-1],p[0][0]); freeArray(1,p/*q*/); return 0; }
Private
[
?
]
Run code
Submit