buyやmakeなどにforが付くことが多いのですが、forは『相手がいなくてもできる』動作につきます。
例えばbuy「買う」ことは自分一人でも成り立つ行為ですよね!買い物は一人でもできる事ですよね。
またgiveやshowにはtoが使われるのですが、toは『相手を必要とする』動作につきます。
例えば、give「与える」ことは誰かしら相手がいないと成立しません。相手が与えられたものを受け取って初めて「与える」ことが成り立ちますよね。
このように、でてきた動作に相手が必要なのか必要でないかで使い分けられています!!
ありがとうございます!