By a pre-fix menu, they mean that they have certain set daily offerings every meal, (they change daily) but, there are usually about 5 different items to choose from. They post it ahead of time, usually via your in room TV, so if it doesn't line up with what you need or want, then you can go to the Buffet where if you don't find something you like, then you must be starving most of the time. There's only a few major food groups at best!
I don't believe in the history of cruising anyone has ever gone hungry. Quite the opposite. The formal dining rooms have the "fancier" fare, but, most of it is really basic. I could have lived on the French Onion Soup alone. That is an appetizer but you can order more then one if that is all you want and skip the main course. The Prime Rib is also to die for. The buffets are much more along the lines of just plain old regular food. You want Ham... they got it. You want chicken.. they got it. You want a hamburger or pizza, guess what... they got that too! Spaghetti your thing... they got you covered. Fish, of course. Salad bars, desserts, all types of potatoes, rice and about a million types of bread. (Caution.... possible starch overload. Atkins will not be happy!)
I'm not sure what kind of cruise your bil was on, but, he apparently didn't look around or read what was available. I know I sound like an employee for a cruise line, but, really, cruising isn't for everyone, but, it is quite an experience. The independent Restaurant settings are usually upcharge... meaning you have to pay extra to eat there, whereas the dining room and buffet and even most of the snack bars are included in your prepaid cruise cost. However, the restaurants are an option and usually have a specific specialty be it Italian cuisine or American or Mexican or French or whatever.