IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Передача и возврат ссылок из функции, С++
сообщение
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 306
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Объявил структуру Student, которая содержит четыре поля(фамилию, имя и отчество студента и год рождения), при этом строковые значения храню в виде массивов,а не указателей. Описал и инициализировал переменную st типа Student фамилией, именем и отчеством, не задавая год его рождения.


#include <iostream>
using namespace std;

struct Student {
char Surname;
char Name;
char Patronymic;
int Year;
} ;

Student& trunc(Student& X)
{
return X;
}

int main()
{ Student st;
st.Surname='Ivanov';
st.Name='Ivan';
st.Patronymic='Ivanovich';
trunc(st);
}



Проблемы возникли с написанием функции Student& trunc(Student& X), которая сокращает в структуре
имя и отчество до инициалов (с точкой) и возвращает структуру X. Помогите пожалуйста с реализацией этой функции! Проверка работы функции нужно осуществить, передав ей переменную st, и воспользоваться возвращаемым значением функции для задания года рождения.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Проблема у тебя начинается с того, что ты пытаешься одному символу присвоить значение строки (и Surname, и Name, и Patronymic - это char-ы, а не строки)...

Кстати, компилятор тебя предупреждал об этом, почему это было проигнорировано?

Ну, и свою попытку - в студию...

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Знаток
****

Группа: Пользователи
Сообщений: 306
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Цитата(volvo @ 16.03.2008 14:53) *

Проблема у тебя начинается с того, что ты пытаешься одному символу присвоить значение строки (и Surname, и Name, и Patronymic - это char-ы, а не строки)...

Кстати, компилятор тебя предупреждал об этом, почему это было проигнорировано?

Ну, и свою попытку - в студию...


 
Student& trunc(Student& X)
{ char s1,s2;
s1=X.Name;
s2=s1[0]+'.'+'\0'
return X;
}



А саму структуру задать так задавть:


struct Student {
char Surname[255];
char Name[255];
char Patronymic[255];
int Year;
} ;


?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 26.04.2024 6:14
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name