Actually, the better option would be to talk to a manager about it, so they can handle it instead of you. If you approach the topic, that's an unnecessary awkward moment that could affect your time at work more than it already it. Plus, if you go straight to the person, THEY could go to management and cite "abuse in the workplace" or some bullshit and try to get you fired. Not worth it. Take it to management, and keep taking it to management until a conversation happens.
If it's really bad enough that you can't deal, and nothing is being done, tell your manager you mean to leave if you're not taken out of this offensive situation.
I know, a lot of people are gonna be like, "NAH MAN THAT'S BITCH. JUST TELL THE FUCKER HE SMELLS BAD." But my suggestion is actually the correct way to go about it.