15: 9: ошибка: несовместимые типы при назначении типу 'char [3]' из типа 'char * ’
#include <stdio.h> int main(int argc, char *argv[]) { char servIP[3]; int servPortNum; if(argc<3) { printf("Usage: clientApp servIP servPortNum\n"); } servIP = argv[1]; servPortNum = atoi(*argv[2]); }
strncpy (servIP, argv [1], sizeof (servIP) - 1); servIP [sizeof (servIP) - 1] = 0;
Но вы уверены, что servIP достаточно большой для IP-адреса?
servIP
Вы не можете назначать массивы. Используйте функцию strcpy или strncpy для копирования строки в массив char.
strcpy
strncpy
char
Вы не можете назначить такой массив. Назначьте его для каждого члена или используйте вместо него char *servIP.
char *servIP
servIP - это массив, а не указатель.Массивы преобразуются в указатели, но это не одно и то же, и указатели не преобразуются в массивы.