ILE C/C++ Programmer's Guide

Maintaining Consistent Argument Declarations

The validity of an argument list declared in main() depends on the data model that is in effect when the module is created or bound.


Declaration Valid for Data Models
main(int argc, char * * argv) P128, LLP64
main(int argc, char * argv[]) P128, LLP64
main(int argc, char *__ptr128 *__ptr128 argv) P128, LLP64
main(int argc, char *__ptr128 argv[]) P128
main(int argc, char*__ptr128 * argv) P128
main(int argc, char *__ptr64 *__ptr64 argv) P128, LLP64
main(int argc, char *__ptr64 argv[]) LLP64
main(int argc, char *__ptr64 * argv) LLP64
main(int argc, char *__ptr64 *__ptr128 argv) (Invalid for any data model)
main(int argc, char *__ptr128 *__ptr64 argv) (Invalid for any data model)

Note:
The same rule also applies to the third parameter, envp, in main(). Moreover, the resulting pointer sizes of argv and envp must also be the same.


[ Top of Page | Previous Page | Next Page | Table of Contents ]