Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
1nd1g0
0 / 0 / 0
Регистрация: 24.06.2014
Сообщений: 3
#1

Возвращаемая информация в зависимости от типа принимающей переменной - C++

24.06.2014, 12:32. Просмотров 314. Ответов 5
Метки нет (Все метки)

Здравствуйте!
Читаю книгу "Язык программирования C++. Лекции и упражнения", и запнулся на одном моменте, который я так и не смог понять:
Вызов mangle("I 'm glad to meet you") возвращает символ І или указатель на строку "I'm glad to meet you" в зависимости от того, присваивается возвращаемое значение переменной типа char или переменной типа char*.

В выделенном тексте и есть загвоздка.
Прошу помощи у сообщества любителей и профессионалов
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.06.2014, 12:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Возвращаемая информация в зависимости от типа принимающей переменной (C++):

Действовать в зависимости от типа переменной - C++
допустим есть массив в которой я хочу добавить по определённым индексам значение всех переменных передаваемой структуры. Проблема возникает...

Выбор типа переменной-члена класса в зависимости от параметров передаваемых конструктору - C++
Здравствуйте форумчане! Ответьте пожалуйста на вопрос - возможно ли такое на С++ и если да, то как это реализовать? Имеется класс, в нём...

Объявление функции, принимающей объект любого типа - C++
Доброго времени суток. Мне нужна функция, которая будет принимать 3 объекта функции как критерии сортировки. Все три критерия могут быть...

Доделать задачу. Для данного вещественного x найти значение следующей функции f, принимающей значения целого типа - C++
Помогите доделать задачу. #include <iostream> using namespace std; int main() { double x; int y; cout << "x =...

Для данного вещественного х найти значение следущей функции f, принимающей значение целого типа: - C++
0, если х<0, f(x) = 1, если принадлежит[0,1),[2,3),..., -1, если х принадлежит [1,2),[3,4), ... .

Переменной d присвоить первую цифру после запятой некоторой переменной x типа float - C++
Нужно целой переменной d присвоить первую цыфру после комы некоторой переменной x типа float Скажите, пожалуйста, с чего начать и по...

5
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
24.06.2014, 13:00 #2
Вам объяснить чем символ отличается от указателя на символ или что?
Если функция возвращает char*, то присвоение результата переменной типа char будет являться ошибкой компиляции.
Поэтому, приведите больше кода из Вашей чудо-книжки.
0
1nd1g0
0 / 0 / 0
Регистрация: 24.06.2014
Сообщений: 3
24.06.2014, 13:12  [ТС] #3
Цитата Сообщение от Tulosba Посмотреть сообщение
Вам объяснить чем символ отличается от указателя на символ или что?
Это я понимаю, не могу понять, как реализовать определение функции, с учётом условия задания.

Как я понимаю, нужно реализовать определение функции таким образом, чтобы в целевом коде было возможно написать следующее:
C++
1
2
3
4
5
    char * t1=mangle("I 'm glad to meet you");
    std::cout << t1; //I 'm glad to meet you
 
    char t2=mangle("I 'm glad to meet you");
    std::cout << t2; //I
Цитата Сообщение от Tulosba Посмотреть сообщение
Поэтому, приведите больше кода из Вашей чудо-книжки.
Больше ничего и нет
Ссылка на англоязычный вариант: http://my.safaribooksonline.com/book.../app10lev1sec7
5.d:
mangle("I'm glad to meet you") returns the character I or a pointer to the string "I'm mad to gleet you" depending on whether you assign the return value to a char variable or to a char* variable.
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
24.06.2014, 13:44 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от 1nd1g0 Посмотреть сообщение
Больше ничего и нет
Т.е. наличие ответа Вы не заметили?
You can't do this one because both versions would have the same signature.
1
Kuzia domovenok
2117 / 1946 / 190
Регистрация: 25.03.2012
Сообщений: 6,751
Записей в блоге: 1
24.06.2014, 13:48 #5
1nd1g0, ну так ты читать не умеешь что ли? Там даны вопросы и тут же ответы на них! Ты что, не читаешь ответы?
1
1nd1g0
0 / 0 / 0
Регистрация: 24.06.2014
Сообщений: 3
24.06.2014, 14:08  [ТС] #6
Извиняюсь, не заметил что в англоязычной версии ответы расположены рядом с ответами
А в русскоязычной версии, они только в самом конце, из за чего, я не подозревал о них
Можно закрывать
0
24.06.2014, 14:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2014, 14:08
Привет! Вот еще темы с ответами:

Записать адрес переменной произвольного типа в переменную типа int - C++
Здравствуйте, есть структура __packed struct myStruct{ uint32 HisCh; uint32 sNo; uint16 tNo; uint32 reserv; };

Как присвоить значение одного из элементов массива типа char переменной типа int? - C++
С++ начал буквально только что так что буду благодарен за терпение и понимание ) Сразу оговорюсь что уже искал ответ но на эту тему...

Выполнить действие в зависимости от значения переменной - C++
Товарищи, помогите найти ошибку. Код: #include &lt;iostream&gt; #include&lt;windows.h&gt; using namespace std; void one(); void...

Присвоить значение переменной в зависимости от условия - C++
Вычислить y(x), если y = x2 при x &gt; 1 и y = x при x &lt;= 1


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.