char *ft_getenv(char **env, char *elem) { char *uppername; char *ptr; char *value; int i; int len; i = -1; value = NULL; len = ft_strlen(elem); uppername = ft_strdup(elem); ft_strupper(uppername); while (env[++i]) { if (!ft_strncmp(env[i], elem, len) || !ft_strncmp(env[i], uppername, len)) { if ((ptr = ft_strchr(env[i], '='))) value = ft_strndup(ptr + 1, ft_strlen(ptr)); } } free(uppername); return (value); }
int print_lx(t_data *data, va_list arg) { char *nb; int i; char *mod; nb = what_uconv(arg, data, 16); if (ft_strcmp(nb, "0") == 0 && data->prec == 0) ft_str_empty(nb); mod = ((data->flag & 1) && ft_strcmp(nb, "0") != 0) ? "0X" : NULL; ft_strupper(nb); if (nb[0] == '-') i = data->field - ft_max(ft_strlen(nb) + ft_strnlen(mod), data->prec + 1); else i = data->field - ft_max(ft_strlen(nb), data->prec); if (data->prec != -1 && ((data->flag & 2) != 0)) data->flag = data->flag - 2; if ((data->flag & 4) != 0) print_nb_str(nb, data, mod); while ((i-- > 0) && (data->flag & 2) == 0) ft_printchar(' ', data); if ((data->flag & 4) == 0) print_nb_str(nb, data, mod); free(nb); return (1); }
static int setenvsplitted(t_execdata *data, char **uppername, const char *name, int *len) { int envsize; (*uppername) = ft_strdup(name); ft_strupper((*uppername)); envsize = 0; while (data->env[envsize]) envsize++; if (!data->env) return (-1); (*len) = ft_strlen(name); return (envsize); }
int main(int argc, char **argv) { int i; i = 1; if (argc == 1) std::cout << "* LOUD AND UNBEARABLE FEEDBACK NOISE *" << std::endl; else if (argc > 1) { while (argv[i]) { std::cout << ft_strupper(argv[i]); i++; } std::cout << std::endl; } return (0); }