home *** CD-ROM | disk | FTP | other *** search
- /***************************************************************************\
- ** **
- ** WW WW IIIIIIII NNN NN DDDDDDD BBBBBBB AA SSSSSS EEEEEEEE **
- ** WW W WW II NNNN NN DD DD BB BB AA AA SS EE **
- ** WW W WW II NN NN NN DD DD BBBBBBB AAAAAAAA SSSSSS EEEEEE **
- ** WW W WW II NN NNNN DD DD BB BB AA AA SS EE **
- ** WWWWW IIIIIIII NN NNN DDDDDDD BBBBBBB AA AA SSSSSS EEEEEEEE **
- ** **
- ** SSSSSS OOOOOO FFFFFFFF TTTTTTTT WW WW AA RRRRRRR EEEEEEEE **
- ** SS OO OO FF TT WW W WW AA AA RR RR EE **
- ** SSSSS OO OO FFFFF TT WW W WW AAAAAAAA RRRRRRR EEEEEE **
- ** SS OO OO FF TT WW W WW AA AA RR RR EE **
- ** SSSSSS OOOOOO FF TT WWWWW AA AA RR RR EEEEEEEE **
- ** **
- ********** NOTICE ***********************************************************
- ** This file contains valuable trade secrets and proprietary **
- ** assets of Windbase Software Inc. Embodying substantial **
- ** creative efforts and confidential information. Unauthorized **
- ** use, copying, decompiling, translating, disclosure or **
- ** transfer, of any kind, is strictly prohibited. **
- ** **
- ** COPYRIGHT (C) 1992, 1993, 1994, 1995. Windbase Software Inc. **
- ** ALL RIGHTS RESERVED. **
- \***************************************************************************/
-
- #include <stdio.h>
- #include <string.h>
- #include <stdlib.h>
- #include <iostream.h>
-
- #include "../memsl.h"
-
- main()
- {
- WBArray array("10,100"), *dynarray;
- char dimensions[21], **strarr, *strptr, **********mdstr;
- int *intarr, **intarr2, numitems = 20, i, i1, i2, i3, i4, i5, i6, i7, i8, i9;
-
- cout << "\n\n========================================================\n";
- cout << " Two dimensional array\n";
- cout << "========================================================\n";
- cout << "WBArray array(\"10,100\");\n";
- cout << "char **strarr;\n\n";
- cout << "strarr = (char **) array.GetArray();\n\n";
-
- if ((strarr = (char **) array.GetArray()) != NULL)
- {
- for (i = 0; i < 10; i++)
- sprintf(strarr[i],"This is element %d of a two dimensional array.",i);
- for (i = 0; i < 10; i++)
- cout << strarr[i] << "\n";
- }
-
- cout << "\n\n========================================================\n";
- cout << " One dimensional array\n";
- cout << "========================================================\n";
- cout << "WBArray *dynarray;\n";
- cout << "char *strptr;\n\n";
- cout << "dynarray = new WBArray(\"100\");\n";
- cout << "strptr = (char *) dynarray.GetArray();\n\n";
-
- dynarray = new WBArray("100");
- if ((strptr = (char *) dynarray->GetArray()) != NULL)
- {
- strcpy(strptr,"This is a dynamic one dimensional array");
- cout << strptr << "\n";
- }
- delete dynarray;
-
- dynarray = new WBArray("2,2,2,2,2,2,2,2,2,50");
- if ((mdstr = (char **********)dynarray->GetArray()) != NULL)
- {
- cout << "\n\n========================================================\n";
- cout << " Ten dimensional array\n";
- cout << "========================================================\n";
- cout << "WBArray *dynarray;\n";
- cout << "char **********mdstr;\n\n";
- cout << "dynarray = new WBArray(\"2,2,2,2,2,2,2,2,2,50\");\n";
- cout << "mdstr = (char **********) dynarray.GetArray();\n\n";
- for (i1 = 0; i1 < 2; i1++)
- for (i2 = 0; i2 < 2; i2++)
- for (i3 = 0; i3 < 2; i3++)
- for (i4 = 0; i4 < 2; i4++)
- for (i5 = 0; i5 < 2; i5++)
- for (i6 = 0; i6 < 2; i6++)
- for (i7 = 0; i7 < 2; i7++)
- for (i8 = 0; i8 < 2; i8++)
- for (i9 = 0; i9 < 2; i9++)
- sprintf(mdstr[i1][i2][i3][i4][i5][i6][i7][i8][i9],
- "This is a ten dimensional array %d%d%d%d%d%d%d%d%d",
- i1,i2,i3,i4,i5,i6,i7,i8,i9);
-
- for (i1 = 0; i1 < 2; i1++)
- for (i2 = 0; i2 < 2; i2++)
- for (i3 = 0; i3 < 2; i3++)
- for (i4 = 0; i4 < 2; i4++)
- for (i5 = 0; i5 < 2; i5++)
- for (i6 = 0; i6 < 2; i6++)
- for (i7 = 0; i7 < 2; i7++)
- for (i8 = 0; i8 < 2; i8++)
- for (i9 = 0; i9 < 2; i9++)
- cout << mdstr[i1][i2][i3][i4][i5][i6][i7][i8][i9] << "\n";
- }
- delete dynarray;
-
- cout << "\n\n========================================================\n";
- cout << " One dimensional integer array\n";
- cout << "========================================================\n";
- cout << "WBArray *dynarray;\n";
- cout << "char dimensions[21];\n";
- cout << "int *intarr;\n\n";
- cout << "sprintf(dimensions,\"%d\",numitems*sizeof(int));\n";
- cout << "dynarray = new WBArray(dimensions);\n";
- cout << "intarr = (int *) dynarray->GetArray();\n\n";
-
- sprintf(dimensions,"%d",numitems*sizeof(int));
-
- dynarray = new WBArray(dimensions);
-
- if ((intarr = (int *) dynarray->GetArray()) != NULL)
- {
- for (i = 0; i < numitems; i++)
- intarr[i] = i + 1000;
- for (i = 0; i < numitems; i++)
- cout << "Element: " << (i+1) << " Value: " << intarr[i] << "\n";
- }
-
- delete dynarray;
-
- cout << "\n\n========================================================\n";
- cout << " Two dimensional integer array\n";
- cout << "========================================================\n";
- cout << "WBArray *dynarray;\n";
- cout << "char dimensions[21];\n";
- cout << "int **intarr2;\n\n";
- cout << "sprintf(dimensions,\"%d,%d\",numitems,numitems*sizeof(int));\n";
- cout << "dynarray = new WBArray(dimensions);\n";
- cout << "intarr2 = (int **) dynarray->GetArray();\n\n";
-
- sprintf(dimensions,"%d,%d",numitems,numitems*sizeof(int));
-
- dynarray = new WBArray(dimensions);
-
- if ((intarr2 = (int **) dynarray->GetArray()) != NULL)
- {
- for (i = 0; i < numitems; i++)
- for (i2 = 0; i2 < numitems; i2++)
- intarr2[i][i2] = i + i2 + 1000;
- for (i = 0; i < numitems; i++)
- for (i2 = 0; i2 < numitems; i2++)
- cout << "Element: [" << i << "][" << i2 << "] Value: " << intarr2[i][i2] << "\n";
- }
-
- delete dynarray;
-
- return(0);
- }
-