File indexing completed on 2026-04-09 07:49:13
0001
0002
0003
0004 #include <string.h>
0005 #include <stdio.h>
0006
0007
0008 void check(int argc, char** argv)
0009 {
0010 char** args = new char*[argc] ;
0011 for(int i=0 ; i < argc ; ++i ) args[i] = strdup(argv[i]) ;
0012 for(int i=0 ; i < argc ; ++i ) printf(" %2d : [%s] \n", i, args[i] );
0013 }
0014
0015 void check1()
0016 {
0017 int argc(1);
0018
0019
0020 char** argv = new char*[argc] ;
0021 argv[0] = (char*)"ArgsTest.cc" ;
0022 check(argc, argv);
0023 delete [] argv ;
0024
0025 }
0026
0027 void check1fix()
0028 {
0029
0030 const int argc = 1 ;
0031 char* argv[argc] ;
0032 argv[0] = (char*)"ArgsTest.cc" ;
0033 check(argc, argv);
0034 }
0035
0036
0037 void check2()
0038 {
0039
0040
0041
0042 enum { argc = 2 } ;
0043 char* argv[argc] ;
0044
0045 argv[0] = (char*)"ArgsTest.cc" ;
0046 argv[1] = (char*)"red" ;
0047
0048 check(argc, argv);
0049 }
0050
0051 int main(int argc, char** argv)
0052 {
0053
0054
0055
0056 check1fix();
0057 check2();
0058
0059 return 0 ;
0060 }