Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не сочитание типов char и char, О_о 
V
    Опции темы
Kirgston
Дата 30.4.2009, 15:12 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: нет
Всего: 2



Всем доброго времени суток! Я начал писать игру... но уже на первых порах что то не ясное творится... вообщем смотрите сами =)

Код

char sel_town()
{
   int i;
  char rasa_t[MAX_PATH];
  char gor[MAX_PATH];
  char gor2[MAX_PATH];
  char gor3[MAX_PATH];
  char gor4[MAX_PATH];
  char gor5[MAX_PATH];
  char gor6[MAX_PATH];
  system("cls");
  CharToOem("Ну что же... пора и тебе пойти по пути. Но по каком пути - выбирать тебе. Выбор у тебя конечно не большой... ",gor);
  CharToOem("но выбрав его ты выберешь свою дальнеюшую жизнь! Итак в каком городе тебе хочется начать свои подвиги?",gor2);
  CharToOem("\n\n\n\n\n1.Песчаные Варвары - здесь никто не полагается на ум. Только ярость и сила руководит всеми.",gor3);
  CharToOem("\n2.Долина Эльфов - лучшие разведчики и ловкачи обитают сдесь.",gor4);
  CharToOem("\n3.Горные Гномы - залог успеха гномов - ихняя торговля.",gor5);
  CharToOem("\n4.Альянс - Империя Людей. Здесь обитают легендарные кузнецы и паладины.\n",gor6);
  write(gor,50);
  write(gor2,50);
  write(gor3,50);
  write(gor4,50);
  write(gor5,50);
  write(gor6,50);
  scanf("%d",&i);
  if ((i<1) && (i>4)) {
      sel_town();
  }
  else
  {
  switch (rasa) {
      case 1: CharToOem("Варавар-",rasa_t); break;
      case 2: CharToOem("Человек-",rasa_t); break;
      case 3: CharToOem("Эльф-",rasa_t); break;
      case 4: CharToOem("Гном-",rasa_t); break;
  default:
      ;
  }
  rasa_n=rasa;
  return(rasa_t);
  }
}


Тут я сканирую цифры + от их зависимости записываю в раса_т разные значения. А после возвращаю их. 

Код

void newg()
{
rasa=sel_town();
printf("%s",rasa);
getch();
}


Но когда я потом стараюсь присвоить... вылетает
[BCC32 Error] File1.c(114): E2349 Nonportable pointer conversion

раса обявлена как

Код

//---------------------------------------------------------------------------
#include <conio.h>
#include <windows.h>
#include <stdio.h>
#include <stdio.h>
#include <string.h>
#include <cstring>
#pragma hdrstop

#include <tchar.h>
//---------------------------------------------------------------------------

#pragma argsused
char rasa;


Заранее очень благодарен!
PM MAIL   Вверх
Fazil6
Дата 30.4.2009, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 7
Всего: 60



Код

char sel_town() // что тут возвращаем?
{
   int i;
  char rasa_t[MAX_PATH];
 ......
  // bla- bla
  return(rasa_t); // что тут возвращаем?

}


Это сообщение отредактировал(а) Fazil6 - 30.4.2009, 15:23
PM MAIL   Вверх
Kirgston
Дата 30.4.2009, 15:27 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: нет
Всего: 2



Ну так там же написано в обеих вариантах char. Переменная типа char и возвращаемое значение типа char.
PM MAIL   Вверх
Fazil6
Дата 30.4.2009, 15:28 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 7
Всего: 60



Цитата(Kirgston @  30.4.2009,  15:12 Найти цитируемый пост)
CharToOem("\n3.Горные Гномы - залог успеха гномов - ихняя торговля.",gor5);

да уж...
PM MAIL   Вверх
Lazin
Дата 30.4.2009, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



Цитата(Fazil6 @  30.4.2009,  15:17 Найти цитируемый пост)
char rasa_t[MAX_PATH];


Цитата(Kirgston @  30.4.2009,  15:27 Найти цитируемый пост)
Переменная типа char


возможно для тебя будет сюрпризом, что переменная rasa_t - массив символов
 smile 
PM MAIL Skype GTalk   Вверх
Fazil6
Дата 30.4.2009, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 7
Всего: 60



Цитата(Kirgston @  30.4.2009,  15:27 Найти цитируемый пост)
Ну так там же написано в обеих вариантах char. Переменная типа char и возвращаемое значение типа char. 

совсем не это там написано. 
rasa_t разве имеет тип char?

Добавлено через 2 минуты и 26 секунд

Цитата(Lazin @  30.4.2009,  15:31 Найти цитируемый пост)
возможно для тебя будет сюрпризом, что переменная rasa_t - массив символов

насколько я разбираюсь в медицине, похоже, что главный сюрприз здесь в том, что char - это не строка 
PM MAIL   Вверх
Lazin
Дата 30.4.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



you has been raped in three last comments
PM MAIL Skype GTalk   Вверх
Kirgston
Дата 30.4.2009, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: нет
Всего: 2



да в принципе я понимаю что чар(макс_патч) это масив. Но если я запишу ::rasa=rasa_t; то будет такая же ошибка. Хотя и то и другое масив символов
PM MAIL   Вверх
Lazin
Дата 30.4.2009, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



массивы нельзя присваивать, их можно копировать, например с помощью ф-ии memcpy

Цитата(Kirgston @  30.4.2009,  15:50 Найти цитируемый пост)
Но если я запишу ::rasa=rasa_t; то будет такая же ошибка. Хотя и то и другое масив символов

Цитата(Kirgston @  30.4.2009,  15:12 Найти цитируемый пост)
char rasa;

 smile

Добавлено через 9 минут и 40 секунд
user posted image
PM MAIL Skype GTalk   Вверх
Fazil6
Дата 30.4.2009, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 7
Всего: 60



Цитата(Kirgston @  30.4.2009,  15:50 Найти цитируемый пост)
да в принципе я понимаю что чар(макс_патч) это масив. Но если я запишу ::rasa=rasa_t; то будет такая же ошибка. Хотя и то и другое масив символов 

почитай книгу какую-нибудь. Ничего ты не понимаешь. Твой ::rasa никакой не массив
PM MAIL   Вверх
Kirgston
Дата 1.5.2009, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: нет
Всего: 2



Да спасибо тогда просто не увидел. Уже всё сделал с помощью strcpy =)
PM MAIL   Вверх
andrew_121
Дата 1.5.2009, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



Я выпал smile  smile 


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0573 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.