Ну не входит он в "if". Объясните, что не так =/. И массив из указателей пробовал и просто char params_type[10]. Ничего не помагает. Вывожу на эран params_type printf'ом все нормально, выводит, как и надо "char", а сравнить не получается.
#include <stdio.h>
#include <stdlib.h>
void main (){
int char_ = sizeof (char);
char *s;
char array_length[10];
char *params_type;
printf ("Input length of one-dimmensionфд array: ");
scanf ("%s", array_length);
if (!atoi(array_length)) {
printf ("\nError, array length must be a number\n\n");
exit(1);
}
printf ("Input type of array params: ");
params_type = malloc(1);
scanf ("%s", params_type);
if (params_type == "char") {
if (!(s= malloc(atoi(array_length)*char_))) {
printf ("\nError, memory can not be allocated");
exit(1);}
else printf ("%i bytes of memmory was allocated, that is equal to %i chars", atoi(array_length)*char_, atoi(array_length));
}
return;
}