From -9040362171749806615
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: f78e5,e94695845965b249
X-Google-Attributes: gidf78e5,public
X-Google-ArrivalTime: 1992-12-11 19:59:17 PST
Newsgroups: comp.std.c++
Path: sparky!uunet!microsoft!hexnut!jimad
From: jimad@microsoft.com (Jim Adcock)
Subject: Re: Zero-length structures and pointer comparisons
Message-ID: <1992Dec11.233748.12815@microsoft.com>
Date: 11 Dec 92 23:37:48 GMT
Organization: Microsoft Corporation
References: <1992Dec8.103218.27689@lth.se> <9234423.15066@mulga.cs.mu.OZ.AU> <KANZE.92Dec10174617@slsvdnt.us-es.sel.de>
Lines: 11

In article <KANZE.92Dec10174617@slsvdnt.us-es.sel.de> kanze@us-es.sel.de (James Kanze) writes:
|	int	cmp = memcmp( &ptr1 , &ptr2 , sizeof( void* ) ) ;
|
|This works on all implementations I can think of.  Is it guaranteed?

Also, Cray uses very different pointer implementations for char* verses
other types of pointers, since the natural address granularity on the Cray
is too large to make a good char*.  Thus sizeof(char*) != sizeof(int*) 
for example. [I don't know what sizeof(void*) would compare to -- char*
or int*]



