присваивание делает указатель из целого числа без приведения [включено по умолчанию]

Я гуглил это и вижу много ответов, но ни один не соответствует моей ситуации. Это мой главный ():

char * cString;
puts("Please enter data you want to encrypt.");
cString = getInput(cString, &iStringSize);
printf("The message is: %s\n\n", cString);

char * strEncrypt;
strEncrypt = encrypt(cString, offset);
printf("The encrypted message is: %s\n\n", strEncrypt);

return 0;

Эта программа в основном читает произвольный ввод, затем шифрует его. Это функция getInput:

char * getInput(char *cString, int * iStringSize)
{
    puts("Begin reading input.");
    char buffer[CHUNK];
    int iBufferSize;
    while(fgets(buffer, CHUNK - 1, stdin) != NULL)
    {
        iBufferSize = strlen(buffer);
        *iStringSize += iBufferSize;
        cString = realloc(cString, sizeof(char) * (*iStringSize + 1));
        strcat(cString, buffer);
    }
    printf("String size is: %d\n", *iStringSize);
    puts("Reading successful");
    return cString;
}

Как показано выше, cString является указателем на символ. Функция getInput также возвращает указатель на символ. Тем не менее, я продолжаю получать сообщение: присваивание делает указатель из целого числа без приведения [включено по умолчанию]

Это происходит, когда я компилирую код.

То же самое происходит с этой функцией

char * encrypt(char *str, int offset)
{
    puts("Begin encryption.");
    char * strEncrypt = malloc(sizeof(char) * (strlen(str) + 1));
    int i;
    for(i = 0; i < strlen(str); i++)
    {
        //substitution algorithm using int offset variable.
        //I accessed str and strEncrypt using pointer arithmetic
    }

    puts("Encryption success!");
    return strEncrypt;
}

Пожалуйста, никаких предложений по обработке ошибок realloc.

Ответы на вопрос(1)

Ваш ответ на вопрос