EFL 1.7 svn doobies
[profile/ivi/eina.git] / src / examples / eina_stringshare_01.c
1 //Compile with:
2 //gcc -g eina_stringshare_01.c -o eina_stringshare_01 `pkg-config --cflags --libs eina`
3
4 #include <stdio.h>
5 #include <Eina.h>
6
7 int
8 main(int argc, char **argv)
9 {
10    const char *str, *str2;
11    const char *prologe = "The Cylons were created by man. They rebelled. They "
12                          "evolved.";
13    const char *prologe2 = "%d Cylon models. %d are known. %d live in secret. "
14                           "%d will be revealed.";
15    const char *prologe3 = "There are many copies. And they have a plan.";
16
17    eina_init();
18
19    str = eina_stringshare_add_length(prologe, 31);
20    printf("%s\n", str);
21    printf("length: %d\n", eina_stringshare_strlen(str));
22    eina_stringshare_del(str);
23
24    str = eina_stringshare_printf(prologe2, 12, 7, 4, 1);
25    printf("%s\n", str);
26    eina_stringshare_del(str);
27
28    str = eina_stringshare_nprintf(45, "%s", prologe3);
29    printf("%s\n", str);
30    str2 = eina_stringshare_add(prologe3);
31    printf("%s\n", str2);
32    eina_stringshare_ref(str2);
33    eina_stringshare_del(str2);
34    printf("%s\n", str2);
35
36    eina_stringshare_replace(&str, prologe);
37    printf("%s\n", str);
38
39    eina_stringshare_del(str);
40    eina_stringshare_del(str2);
41
42    eina_shutdown();
43
44    return 0;
45 }