void add()
{
char name[50], surname[50], usern[50];
int id, birth, amount;
printf("Enter your name, surname and your year of birth:\n");
scanf("%s %s %d", &name, &surname, &birth);
printf("Enter your ID, username and your total amount:\n");
scanf("%d %s %d", &id, &usern, &amount);
const char *pass1=function(usern);
}
const char *function (char usern[50])
{
char temp;
int i=0;
int j;
j = strlen(usern) - 1;
while (i < j)
{
temp = usern[i];
usern[i] = usern[j];
usern[j] = temp;
i++;
j--;
}
return usern;
}
я называю «добавить» с «основной», чтобы распечатать эти вещи, а затем я называю «функция», чтобы вернуть мне usern
строку, но что-то идет не так.не могу понять, как вернуть строку из функции в C
я получаю сообщение об ошибке при компиляции:
[Предупреждение] инициализация делает указатель из целого числа без приведения -> Const символ * pass1 = функция (usern);
[Error] конфликтующие типы для «функции» -> Const символ * функции (символ usern [50])
Что происходит не так? Что вы делаете с 'const char * pass1'? Каков ожидаемый результат и какой результат вы получаете? Широкое заявление вроде «что-то пойдет не так», скорее всего, не поможет вам. Более подробная информация о проблеме, с другой стороны, определенно поможет вам решить проблему. :) – SCCC
привет, предупреждения: [Предупреждение] инициализация делает указатель из целого без трансляции -> const char * pass1 = function (usern); и [Ошибка] конфликтующие типы для 'function' -> const char * function (char usern [50]) – sniperalex117
Я хочу вернуть строку «usern» в «pass1», вызвав эту функцию ('function') – sniperalex117