29732f2f13af9e1812fed32f2498d63b2794d8f8
[scilab.git] / scilab / modules / string / src / c / isdigit.c
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) INRIA - Allan CORNET
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
10  *
11  */
12
13 /*--------------------------------------------------------------------------*/
14 #include <string.h>
15 #include <ctype.h>
16 #include "isletter.h"
17 #include "sci_malloc.h"
18 #include "isdigit.h"
19 /*--------------------------------------------------------------------------*/
20 BOOL *IsDigit(const char* input_string, int *returnedSizeArray)
21 {
22     BOOL *returnedValues = NULL;
23     *returnedSizeArray = 0;
24
25     if (input_string)
26     {
27         int i = 0;
28         int length_input_string = (int)strlen(input_string);
29         *returnedSizeArray = length_input_string;
30
31         if (length_input_string > 0)
32         {
33             returnedValues = (BOOL*)MALLOC(sizeof(BOOL) * length_input_string);
34             if (returnedValues)
35             {
36                 for (i = 0; i < length_input_string; i++)
37                 {
38                     if (isdigit(input_string[i]))
39                     {
40                         returnedValues[i] = TRUE;
41                     }
42                     else
43                     {
44                         returnedValues[i] = FALSE;
45                     }
46                 }
47             }
48         }
49     }
50     return returnedValues;
51 }
52 /*--------------------------------------------------------------------------*/