There are many reasons given. The first has to do with the concepts of hutrah and hudchah. When saving a life allows one to violate shabbos, do we say that as far as this situation is concerned, we look at it like a regular week day (hutrah)? Or do we say that it is shabbos, but we permit a violation (hudchah). This opinion says that shabbos is hutrah, but non-kosher meat is only hudchah. Therefore by slaughtering an animal, there is no violation of any mitzvah in that situation. But if he eats the meat, he violates the prohibition of eating non-kosher meat, even though he is permitted to do so under those circumstances.
Many Rishonim rule that even shabbos is only hudchah. If so, why can one slaughter an animal? They give a much more basic reason. We are worried that the sick person will be disgusted by eating non-kosher meat, and will refuse to eat it. Because this will endanger his life, we provide kosher meat to prevent this from happening. According to this reason, if the sick person is willing to eat it, it is possibly preferable to give non-kosher meat to him. The Mishna Brurah (328:39) rules that for a minor, it is better to give him non-kosher meat.
The Ran gives another reason. He says that even though shabbos is a very severe prohibition, each k’zayis (olive sized portion) of non-kosher meat is a separate prohibition. These will add up to be worse than the violation of shabbos. According to this, if the person just has to eat a small amount, it would be better to eat the non-kosher meat.