Clarity in answers (and questions of course) is important. Where it is lacking, we should seek to improve that -- it does nobody any good if people end up answering the wrong question or if an answer is built on what turns out to be an incorrect premise. However, I would much rather that we do nothing at all than that we do it badly.
Sometimes comments come across as overly confrontational -- comments like "what makes you think X?" or "how is this relevant?". I'm sure this is nobody's intent; we all "hear" what we write through our own filters and if we don't actively step back and ask "how will others read this?" we miss things.
Instead of asking "how do you" or "why do you" or "what makes you think", which sounds personal even though it's not meant to be, focus on either the post or on yourself:
"This answer would be more valuable if you could provide a source for X" (h/t @IsaacMoses)
"I would find this more helpful if..."
"I'm having trouble understanding X; could you expand on that?" -- or even just "could you expand on X?"
"Where do we learn that (assertion that forms the basis of a question)?"
In my experience, comments like the above are well-received. They emphasize that we are a community working together toward a common goal.
Some may find this approach too deferential, but I ask you to think again: better that we err on the side of deference than have an argument and bad feelings that could have been so easily avoided.
To those versed in more in-your-face argument styles, a comment like "what makes you think X?" seems natural. In a beit midrash (or a software-design meeting) or when you're in the room with the person, that's probably true. The Internet is different. We are not all coming from the same place or with the same assumptions. Take some extra care please.
We have lost some users over interaction styles. And while you might say "eh, the site's not for everybody", other than obvious trolls you don't know up front if somebody could have been a good contributor if given half a chance. We can err on the side of caution without compromising on quality by being careful in how we say things.
Or, put more simply, be nice:
Be welcoming, be patient, and assume good intentions. Don't expect new users to know all the rules — they don't. And be patient while they learn. If you're here for help, make it as easy as possible for others to help you. Everyone here is volunteering, and no one responds well to demands for help.
It's a positive commandment; "not being un-nice" isn't enough.