It happens to the best and most careful of knitters: a sweater comes out too small. With a few tricks and tips, you can adjust the size without a very noticeable fix. Take careful measurements beforehand and add only what is needed to avoid having to reshape the sweater. Be sure you have plenty of matching yarn so that your repair will blend in with what you have already constructed.
Add an edging to a seamless cardigan that has proved too small. Depending on how much material you need to add, cast on an inch to an inch and a half. At the end of this row, pick up a stitch at the edge of your work. Work across the row. Pick up a stitch at the end of each new row and work your way up. Do the same on the other side, working in the button holes as you go along.
For a seamed sweater, take apart the seams on either side. Measure it on the recipient and see how much you need to add to ensure a proper fit. Starting at the bottom, knit a panel of the width you need and sew it into the sweater. If you are an advanced knitter, you can knit the panel into the sweater by picking up stitches on either end as you work along. Restitch the sweater when complete.
If you have a seamless pullover or raglan, re-block the sweater. Once you pin it to your blocking surface (a clean carpet works great), run over it with a steamer or steam iron, stretching it out gently as you go. If you only need an inch or two of give, this is a good method to try.
Take the sweater into your local yarn shop and ask for help. Many knitters experience this problem and will be more than willing to give you advice or offer to help you re-block the piece.