This has been a question of mine also since begining this a year ago. I think i've finally answered it for me though. also, my sister's personal trainer helped

basically you shouldn't workout if you are very hungry because you will be weak and you will focus on hunger pains instead of your workout. so try to eat a little something about an hour before your workout. fruit is the best because it has good carbs for energy and digests quickly. it doesn't linger in your stomache. You dont want to go workout on a full stomach though. Then after a strength training workout, you should have protein within a half hour after working out. So I usually have a protein shake, which holds me over for an hour or two, then have my lunch or dinner (depending on the time of day). Your body is already in calorie burning mode from your work out, so its best to have your bigger meals after working out. I happen to have to workout a lot in the evening, so I will usually try to save my dinner for after my workouts. One thing I've read is.... If you eat right before your work out your body will be producing insulin, which slows the process of burning fat. so, you dont want to be starving, but you also dont want to have a full belly before you go work out. hope this helps