示例#1
0
int lwm2m_int8ToPlainText(int8_t data,
                          char ** bufferP)
{
    return lwm2m_int64ToPlainText((int64_t)data, bufferP);
}
示例#2
0
文件: utils.c 项目: alex8224/wakaama
size_t lwm2m_boolToPlainText(bool data,
                             uint8_t ** bufferP)
{
    return lwm2m_int64ToPlainText((int64_t)(data?1:0), bufferP);
}
示例#3
0
int lwm2m_boolToPlainText(bool data,
                          char ** bufferP)
{
    return lwm2m_int64ToPlainText((int64_t)(data?1:0), bufferP);
}
示例#4
0
文件: test.c 项目: alex8224/wakaama
int main(int argc, char *argv[])
{
    int i;

    char * tests[]={"1", "-114" , "2", "0", "-2", "919293949596979899", "-98979969594939291", "999999999999999999999999999999", "1.2" , "0.134" , "432f.43" , "0.01", "1.00000000000002", NULL};
    int64_t ints[]={12, -114 , 1 , 134 , 43243 , 0, -215025, 0xFF};
    double floats[]={12, -114 , -30 , 1.02 , 134.000235 , 0.43243 , 0, -21.5025, -0.0925, 0.98765, 0xFF};

    printf("lwm2m_PlainTextToInt64():\r\n");
    for (i = 0 ; tests[i] != NULL ; i++)
    {
        int64_t res;

        printf("\"%s\" -> ", tests[i]);
        if (lwm2m_PlainTextToInt64(tests[i], strlen(tests[i]), &res) == 1)
        {
            printf("%" PRId64 "\r\n", res);
        }
        else
        {
            printf ("fail\r\n");
        }
    }

    printf("\r\n\nlwm2m_PlainTextToFloat64():\r\n");
    for (i = 0 ; tests[i] != NULL ; i++)
    {
        double res;

        printf("\"%s\" -> ", tests[i]);
        if (lwm2m_PlainTextToFloat64(tests[i], strlen(tests[i]), &res) == 1)
        {
            int j;
            printf("%.16g\r\n", res);
        }
        else
        {
            printf ("fail\r\n");
        }
    }

    printf("\r\n\nlwm2m_int64ToPlainText():\r\n");
    for (i = 0 ; ints[i] != 0xFF; i++)
    {
        char * res;
        int len;

        printf("%d -> ", ints[i]);
        len = lwm2m_int64ToPlainText(ints[i], &res);

        if (len > 0)
        {
            int j;

            printf("\"");
            for (j = 0 ; j < len ; j++)
                printf("%c", res[j]);
            printf("\" (%d chars)\r\n", len);
            lwm2m_free(res);
        }
        else
        {
            printf ("fail\r\n");
        }
    }

    printf("\r\n\nlwm2m_float64ToPlainText():\r\n");
    for (i = 0 ; floats[i] != 0xFF; i++)
    {
        char * res;
        int len;

        printf("%.16g -> ", floats[i]);
        len = lwm2m_float64ToPlainText(floats[i], &res);

        if (len > 0)
        {
            int j;

            printf("\"");
            for (j = 0 ; j < len ; j++)
                printf("%c", res[j]);
            printf("\" (%d chars)\r\n", len);
            lwm2m_free(res);
        }
        else
        {
            printf ("fail\r\n");
        }
    }
}