Segment experiment!
*/
#include <stdio.h>
+#include <malloc.h>
#ifdef __WATCOMC__
-//typedef void __based(__self) * memptr;
-typedef __segment memptr;
+typedef void __based(__self) * memptr;
+//typedef __segment memptr;
#endif
#ifdef __BORLANDC__
typedef void _seg * memptr;
#endif
void
-main(/*int argc, char *argv[]*/)
+main(int argc, char *argv[])
{
+ __segment segu;
unsigned bee=0;
+#ifdef __WATCOMC__
+ void __based(segu)* pee;
+#endif
+#ifdef __BORLANDC__
memptr pee;
+#endif
+ argc=argc;
printf("local variable bee= %Fp\n", &bee);
printf("local variable bee= %p\n", &bee);
printf("far pointer value of pee= %Fp\n", pee);
#include <stdlib.h>\r
#include <malloc.h>\r
\r
-struct list {\r
- struct list __based(__self) *next;\r
- int value;\r
+struct list {
+#ifdef __WATCOMC__\r
+ struct list __based(__self) *next;
+#endif
+#ifdef __BORLANDC__
+ struct list _seg *next;
+#endif\r
+ int value;\r
};\r
\r
void main(int argc, char *argv[])\r
- {\r
- int i;\r
- __segment segu;
+{\r
+ int i;
+#ifdef __WATCOMC__\r
+ __segment segu;
void __based(__self) *pee;\r
- struct list __based(segu) *head;\r
- struct list __based(segu) *p;\r
+ struct list __based(segu) *head;\r
+ struct list __based(segu) *p;
+#endif
+#ifdef __BORLANDC__
+ void _seg *pee;\r
+ struct list _seg *head;\r
+ struct list _seg *p;
+#endif\r
\r
/* allocate based heap */\r
segu = _bheapseg( 65536 );\r