To begin with, the main difference between subsidies and price ceilings is that subsidies move the market equilibrium as they shift supply outwards (show on a diagram), which occurs because producers now face lower marginal costs. Therefore, equilibrium quantity increases and equilibrium price falls, which are both beneficial to consumers. These are also beneficial to producers, who still receive a higher price for their products and who now sell a higher quantity (point these on the diagram).
On the other hand, a price ceiling forces a market to operate at a non-equilibrium. When we draw a price ceiling below the equilibrium point (show on a diagram), we see that for that price Qd exceeds Qs. This difference (denote on the diagram) is the shortage created. Given the shortage, there might be more imports of this product. Therefore, domestic producers are worse off due to selling a lower quantity and at a lower price. However, enforcing price ceilings might be the only way to make a product more affordable for the consumer if no part of the government's budget can be allocated to subsidies for this market.