Untitled
unknown
c_cpp
a year ago
756 B
3
Indexable
#include <stdio.h>
int w16( wchar_t* str )
{
if( str[ 0 ] == L'\0' || str[ 1 ] == L'\0' || str[ 2 ] == L'\0' || str[ 3 ] != L'\0' )
{
return 0;
}
for( int i = 0; i < 3; ++i )
{
if( str[ i ] < L'0' || str[ i ] > L'9' )
{
return 0;
}
}
return ( str[ 0 ] - L'0' ) * 100 + ( str[ 1 ] - L'0' ) * 10 + ( str[ 2 ] - L'0' );
}
int main()
{
wchar_t str1[] = L"123";
wchar_t str2[] = L"12a";
wchar_t str3[] = L"12";
wchar_t str4[] = L"abcd";
wprintf( L"Test 1: %d\n", w16( str1 ) );
wprintf( L"Test 2: %d\n", w16( str2 ) );
wprintf( L"Test 3: %d\n", w16( str3 ) );
wprintf( L"Test 4: %d\n", w16( str4 ) );
return 0;
}
Editor is loading...
Leave a Comment