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

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

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

Error C2440 невозможно преобразовать char в char - C++

05.04.2014, 20:19. Просмотров 714. Ответов 2
Метки нет (Все метки)

двунаправленный список
помогите разобраться с ошибкой

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include "stdafx.h"
#include <iostream>
using namespace std;
#include <conio.h>
 
struct list2
{ char name_nach[20];
  char name_konech[20];
  int nomer;
  list2 * next;
  list2 * pred;
};
 
list2 * insert_list(char name_nach [20],char name_konech[20], int nomer, list2 **tail);
// добавление данных в список
void print_list( list2 * tail); // печать списка
 
void main()
{  list2 * tail; // голова списка
   tail = NULL;  // инициализация хвоста списка
   int nomer;  //переменная для ввода целого числа
   char name_nach[20];
   char name_konech[20];
   int ans=9; //  переменная для ввода команды
 
while (ans)   // цикл меню
{   system ("cls");  // очистка экрана
    cout<<"1 - insertion in list, 2 - print list"<<endl;
    cout << endl<<"Enter command number: ";   
// приглашение ввода номера команды
    cin>>ans;        // читаем номер команды
switch(ans)
{ case 1: cout <<"It is insertion in list.   "<<endl;   // вводим данные
        cout <<"Enter name nachalnogo : "; cin >>name_nach;
//вводить в строку 
        cout <<"Enter name konechnogo: "; cin >>name_konech;
        cout <<"Enter nomer: "; cin >>nomer;
        tail = insert_list(name_nach,name_konech,nomer,&tail); 
        // вызываем функцию добавления данных в список
 
  case 2: cout <<"It is print.   "<<endl<<endl; // печать списка
            if (!tail) cout<<"No data!";        
 // если список пустой, печатаем No data!
            else  print_list (tail);     
 // иначе вызываем функцию печати списка
            break;
default : cout <<"Bad number"<<endl;  // если введена неправильная цифра
    } // конец switch
    _getch();              // чтение символа, задержка экрана
}  //  конец while
delete_list(&tail);   
// Очищаем динамическую память и  удаляем список перед завершением программы.
}
 
list2 * insert_list(char name_nach[20],char name_konech[20],int nomer, list2 **tail)
// добавление в голову списка
{ list2 * padd = new list2;
   strcpy(padd ->name_nach, name_nach); // библиотечная функция копирования строк
   padd->name_konech = name_konech;
   padd->nomer = nomer;
   if ((*tail) == 0) // если список не существует, создаем первый элемент
   { padd->next = 0;
     padd->pred = 0;
   }
   else        // иначе добавляем новый элемент в голову списка
   { padd->next = *tail;
     padd->pred = 0;
     (*tail)->pred = padd;
   }
     *tail = padd;
   return *tail;
}
 
void print_list( list2 * tail) // печать списка
{ list2 * pcurr = tail;
 while (pcurr)
 {cout << pcurr ->name_nach<<",  "<< pcurr->name_konech<<",  "<< pcurr->nomer<<endl;
  pcurr = pcurr ->next; 
 }
}
void delete_list (list2 ** tail)
// удаляем список целиком, элементы удаляются всегда из головы списка
{ list2 * pcurr = *tail;  
  while (pcurr)
  { *tail = pcurr ->next;
    delete pcurr;
    pcurr=*tail;
  }
}
ругается на padd в этой строке:
C++
1
2
3
4
5
6
7
8
{ list2 * padd = new list2;
   strcpy(padd ->name_nach, name_nach); // библиотечная функция копирования строк
   padd->name_konech = name_konech; // [B]тут ругается![/B]
   padd->nomer = nomer;
   if ((*tail) == 0) // если список не существует, создаем первый элемент
   { padd->next = 0;
     padd->pred = 0;
   }
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.04.2014, 20:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Error C2440 невозможно преобразовать char в char (C++):

Error C2440: return: невозможно преобразовать "const char *" в "const char (&)[6]" - C++
Вроде все правильно а все равно не работает. Подскажите в чем ошибка #include &lt;iostream&gt; template&lt;typename T&gt; inline const T...

Error C2664: sprintf: невозможно преобразовать параметр 1 из 'const char *' в 'char *' - C++
error C2664: sprintf: невозможно преобразовать параметр 1 из 'const char *' в 'char *' void crpost(const statep &amp;struc1) { ...

Error C2440 невозможно преобразовать "void *" в "char * - C++
Уважаемые форумчане. Не могу понять почему ему не нравятся указатели. Запускал прогу на разных компиляторах одна и та же ошибка. Error...

Ошибка 6 error C2664: strtok: невозможно преобразовать параметр 1 из "const char *" в "char *" - C++
string s = &quot;555 44 55 66&quot;;//размер строки заранее неизвестен char* p = strtok(s.c_str(), ' '); не нравится такое...

error C2664: strcmp: невозможно преобразовать параметр 1 из "char (*)[20]" в "const char *" - C++
for(int i = 0; i&lt; 5; i++) { wr_struc (list); if (strcmp(&amp;list.Sostav,osn_sostav)==0 &amp;&amp; strcmp(&amp;list.MestoVkomande,attack)==0...

Невозможно преобразовать параметр 1 из 'char' в 'const char *' - C++
Дана задача: Задана последовательность, состоящая только из символов ‘&gt;’, ‘&lt;’ и ‘-‘. Требуется найти количество стрел, которые спрятаны...

2
ValeryS
Модератор
6745 / 5154 / 492
Регистрация: 14.02.2011
Сообщений: 17,323
05.04.2014, 20:23 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Visualkibergop Посмотреть сообщение
padd->name_konech = name_konech;
так строки не копируются
причем строчкой выше сам скопировал правильно строку
Цитата Сообщение от Visualkibergop Посмотреть сообщение
strcpy(padd ->name_nach, name_nach); // библиотечная функция копирования строк
1
Visualkibergop
0 / 0 / 0
Регистрация: 01.12.2013
Сообщений: 35
05.04.2014, 20:32  [ТС] #3
блин,во я невнимательный, точно!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.04.2014, 20:32
Привет! Вот еще темы с ответами:

Невозможно преобразовать из char в const char - C++
Добрый день! В строке вызова функции razdacha(Deck, Face, Suit); возникает ошибка invalid conversion from char** to const char**....

Невозможно преобразовать char* в char - C++
Как исправить ошибку?

Ошибка error C2440 с char в методе класса - C++
Код: #include &quot;stdafx.h&quot; #include &quot;windows.h&quot; #include &quot;iostream&quot;

Error C2440: =: невозможно преобразовать 'std::string' в 'double' - C++
&gt;c:\users\nreshetova\documents\visual studio 2008\projects\sort3d1\sort3d1\sort3d1.cpp(73) : error C2440: =: невозможно преобразовать...


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

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

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