C里如何用substring从后往前截取一段字符串?

C里如何用substring从后往前截取一段字符串?比如char str[] = "纬度:123°12'12''经度:124°25'35'' ";我想截取经度:后面的位置信息。

# include "stdafx.h"
#include <stdio.h>
#include<string.h>
void substring(char *s, char ch1, char ch2, char *substr)
{
    while (*s && *s++ != ch1);
    while (*s && *s != ch2) *substr++ = *s++;
    *substr = '\0';
}
int main()
{
    char str[] = "纬度:123°12'12''经度:124°25'35'' ";
    char sub1[20];
    char sub2[20];
    //string str1 = "yesterday once more";
    substring(str, ':', '经', sub1);
    //substring(str, ':', ,sub2);
    printf("%d\n", strlen(sub1));
    sub1[strlen(sub1)-1] = '\0';
    printf("substring=%s\n", sub1);
    printf("%d\n", strlen(sub1));
    /*sub2[strlen(sub2) - 1] = '\0';
    printf("substring=%s\n", sub2);*/
    return 0;
}

"经"不是一个字符(中文都是这样,但具体是几个字符要根据编译器),不能用单引号。

char要换成 wchar_t,2个字节。