One reason pistols are better: They are more easily concealable than a crossbow/bow.
The rifles also have the benefit of being used as melee weapons, which can of course be applied to crossbows however they'd be much more awkward and thus take a stiffer attack penalty than rifles.