c# - What encoding does Mono use when marshalling strings in P/Invoke? -
i'm reading mono's marshalling guide, purpose of marshalling strings between objective-c++ , unity (for ios games), , i'm confused string marshalling encodings in mono.
i understand string encodings marshalling specified charset enum, allows ansi , unicode (=utf-16) (and auto, makes runtime choose between first two).
but guide keeps saying mono marshals strings in utf-8. how possible? magic happens if no charset specified? mean can safely pass -[nsstring utf8string] objective-c++ c#, if don't specify charset? , imply incompatibility microsoft's runtime?
the ansi charset value meaningless on non-windows operating systems, in case utf-8 used, case ios.
this incompatibility ms runtime, bigger incompatibility in case ms runtime doesn't run @ on ios:).
Comments
Post a Comment