National Geographic Style Manual has moved to
Not hyphenated:
Vice Adm. David C. Whitmore
Admiral Whitmore
the vice admiral
See also: NAVY, MILITARY RANKS, TITLES OF PERSONS.