"Why wasn't I charged in USD?"
If you purchased via the App Store or Google Play and noticed you were charged in your local currency rather than the displayed USD price, this is due to the payment method attached to the account on that app store.
When you purchase via the app, the transaction is handled by the platform you are using (Apple, Google, etc.). The currency shown is based on the payment method you use on that account rather than your current location. For example, if you have a UK credit card connected to your Apple ID, then you will see UK apps and prices displayed in GBP, even if you are located in the US.
Note that the app store may take the displayed USD price and convert it to your local currency, but they may not use the current exchange rate.