I said guns. But a very different type of gun from those most of us are familiar with, because this is another point where Earth-thinking must give way to space-thinking. When the breech-block of a gun aboard one of our cruisers is swung open to receive a new shell there is a brief moment when the gun forms an open connecting tube from the inside of the turret to the outside air.
This will never do aboard a space-ship—there is no air outside and the air from all over the vessel would rush in a tornado to escape into outer space. There will have to be some device for loading the gun in a vacuum or, since this might give trouble in case of a breakdown or a misfire, more likely an automatic tompion to close the mouth of the gun until there is another charge in the breech. This would have the advantage that the rush of air into the gun, evacuated by the previous firing, would automatically clean it of residual explosion products.
But this is not all. Since there is no air to set up resistances to take a projectile out of its proper path, there is no particular reason for rifling the gun. In fact it would be rather better not to. And while shells were mentioned, in connection with beating off rocket-torpedoes and would be very useful for that purpose, there is no reason whatever for employing them against another space-ship or the dome of an enemy base.
The reason for using a shell against an Earthbound ship is that after it gets through the side it explodes there and messes things up for a considerable radius. But a space-ship is vulnerable in a way that no Earth-ship ever is. If it loses its air it's the finish for everybody aboard.
A high-velocity solid-shot, penetrating the side of a space-ship, could tear holes in several compartments and connect them all with the outside, causing disastrously rapid exhaustion of the air. It would be much more damaging than any shell, which would only ruin one or two compartments. For that matter it was discovered during the last war that a solid projectile which penetrated a tank and ricocheted around inside was quite as effective as a shell-burst.
A solid-shot would have more penetrating power because of its greater mass and unwillingness to break up against armor. And there is also the law of military economics that requires you do everything with the least expensive weapon that will accomplish the purpose. A cast-steel bullet with a soft iron head to "grease" its way through armor will be both cheaper and more effective than any type of shell.
As an alternate type of ammunition for use against ships with exceptionally heavy armor, there might be some projectile using the shaped-charge principle. There's nothing wrong with carrying several different types of projectile for the same guns—both ship and field artillery do it right now.
The type and purpose of the projectiles also determine the size of the guns. The reason for using large-caliber guns on Earth are two—to get a bigger bursting charge at the receiving end and to obtain greater range by a larger driving charge in the breech.
But in space a projectile would have infinite range, unless it fell into the gravitational attraction of some body, and the big bursting charge is not required. So the gun need be only just big enough to make the driving charge give it a very high muzzle-velocity.