Army records usually only record age on enlistment - but hopefully including months. They also record parish of birth. Recruits did not have to show a birth certificate so it was down to the man himself to provide the information. At census time they did not line up the men and ask each one for his details. A clerk in the battalion/company office would have used the information from the enlistment papers, or a summary based on them. The army clerk would have then passed it to an officer for signing. If all he knew was Whitchurch, he would have guessed the county. So if the 1881 was compiled by the man himself, I would believe that one.
Was the 1871 census taken in Aldershot?
Ken