Softwareentwickler MATLAB/Simulink (w/m) Erarbeitung von Lösungen im Bereich der Schnittstelle zum Simulink-Modell und der Benutzeroberfläche von TargetLinkdSPACE GmbH - Paderborn
in meiner DLL (in ANSI-C geschrieben) befindet sich ein String, der die korrekten Werte speichert. (Bsp: "85°C") Auf der Konsole(Testprogramm) wird das Zeichen nciht richtig dargestellt und in MATLAB kommt sowas hier raus "85ðC".
Wie kann ich das nun korrekt darstellen lassen, im Speicher liegt es ja anscheinend korrekt... Bzw. muss ich es in der DLL konvertieren, wenn ja. Kennt da jemand eine Lösung?
PS: Konvertierung in der DLL wäre eleganter, da diese DLL auch für Labview genutzt wird und da genau das gleiche Problem auftritt.
char * in C ist ein signed char Vektor. Strings in Matlab sind unsigned short Vektoren, da mxChar 16 bits pro Zeichen benutzt. Wie man die Unicode-Konvertierung vornimmt, habe ich schon angedeutet.
Gruß, Jan
Options and Permissions
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.