Basically, does a full (say) 1TB VHD file occupy more than 1TB of disk space on the host device?
Yes, there is space overhead and it depends on the type of VHD.
For a fixed VHD, there is a 512 byte footer after the raw disk image.
For a dynamic VHD, it's only slightly more complicated. The size of the VHD is equal to the size of the actual data written to it plus the size of the header and footer.
In your example, your fixed disk VHD would consume (1TB + 512 bytes) of total space. A dynamic VHD of the same type would consume (1TB + (2 * 512 bytes)) of total space.
You can read about the VHD specification here (Word .doc).
ALL VHD files have overhead. A dynamic (growing) one does not however incur substantially more overhead than a preallocated (monolithic) one.
The chief difference is that the monolithic/preallocated style has a better chance of being contiguous on disk, which may improve performance. Additionally it avoids the underlying OS calls to expand the file, which improves write performance (more noticeable before it hits its maximum size).