#include <explode.h>\r
-\r
-char** \r
-explode(char separator, const char *string)\r
-{\r
- int pos = 0;\r
- int i, len = 1;\r
- int number = 2;\r
- char **table;\r
- const char* p = string;\r
- \r
- for (i = 0; p[i] != '\0'; i++)\r
- if (p[i] == separator)\r
- number++;\r
- \r
- \r
- table = (char**)calloc(number, sizeof(char*));\r
- \r
- i = 0;\r
+\r char **\r explode(char separator, const char *string) \r
+{
+ \rint pos = 0;
+ \rint i, len = 1;
+ \rint number = 2;
+ \rchar **table;
+ \rconst char *p = string;
+ \r\rfor (i = 0; p[i] != '\0'; i++)
+ \rif (p[i] == separator)
+ \rnumber++;
+ \r\r\rtable = (char **) calloc(number, sizeof(char *));
+ \r\ri = 0;
+ \r\rwhile (*p++ != '\0')
+ \r {
+ \rif (*p == separator)
+ \r {
+ \rtable[i] = (char *) calloc(len + 1, sizeof(char));
+ \rstrncpy(table[i], string + pos, len);
+ \rpos += len + 1;
+ \rlen = 0;
+ \ri++;
+ \r}
\r
- while (*p++ != '\0')\r
- {\r
- if(*p == separator)\r
- {\r
- table[i] = (char*)calloc(len + 1, sizeof(char));\r
- strncpy(table[i], string + pos , len);\r
- pos += len + 1;\r
- len = 0;\r
- i++;\r
- }\r
- else\r
- len++;\r
- }\r
- \r
- if(len > 1)\r
- {\r
- table[i] = (char*)calloc(len + 1, sizeof(char));\r
- strncpy(table[i], string + pos , len);\r
- }\r
- \r
- \r
- table[++i] = NULL;\r
- \r
- return table;\r
-}\r
+ else
+ \rlen++;
+ \r}
+ \r\rif (len > 1)
+ \r {
+ \rtable[i] = (char *) calloc(len + 1, sizeof(char));
+ \rstrncpy(table[i], string + pos, len);
+ \r}
+ \r\r\rtable[++i] = NULL;
+ \r\rreturn table;
+\r}
+
+\r