Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

С++ загадка про функцию и некоторую строку, которую нужно вернуть

Андрей Ринчинов Профи (765), на голосовании 12 лет назад
char func(int x, char str[32])
{
//+100500 changes with str
return (str);
}
написано на с++, очень урезано, передаю суть, мне нужно запихнуть в ф-цию 32-символьную строку, а затем вернуть её в виде возвращаемого значения. не работает. в чем соль и как это провернуть?
Голосование за лучший ответ
Отправитель Мудрец (10387) 12 лет назад
Ну нету строк в си++. Нету!
Твоя функция вообще возвращает символ.
Нужно возвращать указатель на последовательность символов (массив).
Андрей РинчиновПрофи (765) 12 лет назад
> <
я ненавижу указатели, но видимо...
если в качестве параметра использовать указатель на внешний массив то можно его внутри функции изменять?
Krab Вark Оракул (56968) Да, если это указатель на массив, а не сам массив.
Александр Орос Профи (631) 12 лет назад
Перед названием ф-ии добавьте значок *
Krab Вark Оракул (56968) 12 лет назад
В C++ вообще полагается использовать строки типа string. Если уж так хочется использовать наследство от С, нет проблем, но если ты ненавидишь указатели, работай в C++ в стиле C++, а не С. .
ОтправительМудрец (10387) 12 лет назад
Они явно Си проходят. Просто им учителя наверное говорят что это Си++. Нынешние учителя сами мало разницу понимают между си и си++.
Или ты думаешь, что люди, которые не знают, что такое указатель умеют писать на си++ в стиле си++? Т.е. с классами, конструкторами и деструкторами? Да у них первая же программа захлебнется мемори ликами.
Похожие вопросы