OpenersNotesSection(Spacer1)Details

MLTestUCS2String() fails if the current object on the link is not a string, or if the value of the string does not match s.

MLTestUCS2String() returns 0 in the event of an error, and a nonzero value if the function succeeds.

Use (NonWLLink[MLError(), paclet:/ref/c/MLError]) to retrieve the error code if MLTestUCS2String() fails.

MLTestUCS2String() will reset the stream pointer to the expression on the link just prior to calling MLTestUCS2String()if the function fails. This operation behaves as if the programmer called MLCreateMark(link); MLTestUCS2String(…); MLSeekToMark(…).

MLTestUCS2String() is declared in the MathLink header file (RefLink[mathlink.h, paclet:/ref/file/mathlink.h]).

OpenersPrimaryExamplesSection(Spacer1)Examples  (1)

OpenersExampleSection0(Spacer1)Basic Examples  (1)

#include "mathlink.h"

/* A function for testing the next expression on the link for a string */

void f(MLINK l)
{
	const unsigned short theString[8];

	theString[0] = '$'
	theString[1] = 'V';
	theString[2] = 'e';
	theString[3] = 'r';
	theString[4] = 's';
	theString[5] = 'i';
	theString[6] = 'o';
	theString[7] = 'n';

	if(! MLTestUCS2String(l, (const unsigned short *)theString,
		8))
	{ /* The next expression on the link is not $Version */ }
	else
	{ /* The next expression on the link is $Version */ }
}

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(NonWLLink[MLTestString(), paclet:/ref/c/MLTestString])  ▪  (NonWLLink[MLTestUTF16String(), paclet:/ref/c/MLTestUTF16String])  ▪  (NonWLLink[MLTestUTF32String(), paclet:/ref/c/MLTestUTF32String])  ▪  (NonWLLink[MLTestUTF8String(), paclet:/ref/c/MLTestUTF8String])}})}})

({{DocumentationFooterIconsRelatedTutorial.png, ({{Tutorials}, {▪(RefLinkPlain[Manipulating Expressions in External Programs, paclet:tutorial/ManipulatingExpressionsInExternalPrograms])}, {▪(RefLinkPlain[Handling Lists, Arrays, and Other Expressions, paclet:tutorial/HandlingListsArraysAndOtherExpressions])}})}})