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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.80
Valera1984
1 / 1 / 0
Регистрация: 02.02.2014
Сообщений: 105
#1

error C2664: strcmp: невозможно преобразовать параметр 1 из "char (*)[20]" в "const char *" - C++

13.02.2014, 11:02. Просмотров 2292. Ответов 7
Метки нет (Все метки)

1>c:\proect\8\8\8.cpp(64): error C2664: strcmp: невозможно преобразовать параметр 1 из "char (*)[20]" в "const char *"
C++
1
2
3
4
5
6
7
8
9
10
11
12
for(int i = 0; i< 5; i++)
  {
     wr_struc (list[i]);
 
    if (strcmp(&list[i].Sostav,osn_sostav)==0 && strcmp(&list[i].MestoVkomande,attack)==0 )
    {  
        i_min=i;
    } 
 
  }
 
    printf("Sportsmen of osnovnoi_napad %20s ! %2d.%2d.%4d !", list[i_min].fio,list[i_min].d_birth.day,list[i_min].d_birth.month,list[i_min].d_birth.year);
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2014, 11:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос error C2664: strcmp: невозможно преобразовать параметр 1 из "char (*)[20]" в "const char *" (C++):

Ошибка 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: RegisterClassW: невозможно преобразовать параметр 1 из "WNDCLASSEX *" в "const WNDCLASSW *" - C++
почему выдаёт ошибку? int RegClass(WNDPROC Proc,LPCTSTR szName,UINT brBackground){ WNDCLASSEX wc; ...

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

Невозможно преобразовать параметр 2 из "char" в "const char *" - C++
Ошибка strcpy: невозможно преобразовать параметр 2 из &quot;char&quot; в &quot;const char *&quot; //удаления из первой строки всех символов, встречающихся...

невозможно преобразовать параметр 1 из "const char [8]" в "LPCWSTR" - C++
msoftcon.h //msoftcon.h //declarations for Lafore's console graphics functions //uses Window's console functions #ifndef...

Невозможно преобразовать параметр 1 из "const wchar_t [12]" в "const char *" - C++
Писал программу. Дошел до наложения текстур. Пытаюсь наложить 4-й час. Много разных ошибок. Все ошибки гуглил. На данный момент ошибка...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6380 / 5945 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
13.02.2014, 11:11 #2
А так
C++
1
if (strcmp(list[i].Sostav,osn_sostav)==0 && strcmp(list[i].MestoVkomande,attack)==0 )
А Sostav и MestoVkomande действительно строки?
0
Valera1984
1 / 1 / 0
Регистрация: 02.02.2014
Сообщений: 105
13.02.2014, 11:18  [ТС] #3
zss,
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#include"stdafx.h"
#include"iostream"
#include"conio.h"
 
using namespace std;
 
struct Data         
    {
        unsigned day;       
        unsigned month;     
        unsigned year;
    };
 
struct T_sport
    {
        char fio[40];
        Data d_birth;
        unsigned v_CSKA ;
        char MestoVkomande [20];
        char Sostav [20];
        
}; 
 
T_sport vvod_struc(int i);
void wr_struc(T_sport a);
 
int main()
{
 
    T_sport *p;
T_sport list [100]={"Ivanov I. I.",3,1,1984,2000,"Zachitnik","Rezerv", "Petrov A.A.",8,12,1987,2002, "Napad","Osnovnoii"};
    p=list+2;           //адресная арифметика
    strncpy(p->fio,"Martinov I. A.",40);//обращение
    p->d_birth.day=20;
    p->d_birth.month=12;
    p->d_birth.year=1974;
    p->v_CSKA=2007; 
    strncpy(p->MestoVkomande,"Zachitnik",20);
    strncpy(p->Sostav,"Osnovnoii",20);
    
    for(int i = 3; i< 5; i++)
    {   
        list[i]=vvod_struc(i);
    };
    cout<<"\nlist of structs\n!      fio           !  year of birth    !  in command     !  Mesto v Komande     !\n";
    
    
 
    
int i_min=0;
char *osn_sostav = "Osnovnoii";
char *attack = "Napad";
 
  for(int i = 0; i< 5; i++)
  {
     wr_struc (list[i]);
 
    if (!strcmp(&list[i].Sostav,osn_sostav) && !strcmp(&list[i].MestoVkomande,attack) )
    {  
        i_min=i;
    } 
 
  }
 
    printf("Sportsmen of osnovnoi_napad %20s ! %2d.%2d.%4d !", list[i_min].fio,list[i_min].d_birth.day,list[i_min].d_birth.month,list[i_min].d_birth.year);
 
    _getch();
return 0;
}
 
T_sport vvod_struc(int i)
{
    T_sport a; 
    char c;
    cout<<endl<<"Enter data "<< i+1 <<" person\n";
    cout<<" fio ";
    cin.getline(a.fio,40);
    cout<<endl<<"Enter date of birthday: \n";
    cout<<" day (1-31) ";
    cin>>a.d_birth.day;
    cin.get(c);
    cout<<" month (1-12)";
    cin>>a.d_birth.month;
    cin.get(c);
    cout<<" year ";
    cin>>a.d_birth.year;
    cin.get(c);
    cout<<" v_CSKA ";
    cin>>a.v_CSKA;
    cin.get(c);
    cout<<" MestoVkomande ";
    cin.getline(a.MestoVkomande,20);
    cout<<" Sostav ";
    cin.getline(a.Sostav,20);
 
    
    return a;
};
 
void wr_struc (T_sport a)
{
    printf("%20s ! %2d.%2d.%4d ! %4d ! %15s ! %15s\n",a.fio,a.d_birth.day,a.d_birth.month,a.d_birth.year,a .v_CSKA,a.MestoVkomande,a.Sostav);
}
0
zss
Модератор
Эксперт С++
6380 / 5945 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
13.02.2014, 11:21 #4
Амперсанды не нужны и еще надо так
C++
1
2
char osn_sostav[] = "Osnovnoii";
char attack[] = "Napad";
1
Valera1984
1 / 1 / 0
Регистрация: 02.02.2014
Сообщений: 105
13.02.2014, 11:29  [ТС] #5
zss, Записал так ... Компилятор ругается...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int i_min=0;
char osn_sostav[] = "Osnovnoii";
char attack[] = "Napad";
 
  for(int i = 0; i< 5; i++)
  {
     wr_struc (list[i]);
 
    if (!strcmp(list[i].Sostav,osn_sostav) && !strcmp(list[i].MestoVkomande,attack) )
    {  
        i_min=i;
    } 
 
  }
 
    printf("Sportsmen of osnovnoi_napad %20s ! %2d.%2d.%4d !", list[i_min].fio,list[i_min].d_birth.day,list[i_min].d_birth.month,list[i_min].d_birth.year);
 
    _getch();
return 0;
}
0
zss
Модератор
Эксперт С++
6380 / 5945 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
13.02.2014, 11:45 #6
Цитата Сообщение от Valera1984 Посмотреть сообщение
Записал так ... Компилятор ругается...
А у меня не ругается.
0
Valera1984
1 / 1 / 0
Регистрация: 02.02.2014
Сообщений: 105
13.02.2014, 12:41  [ТС] #7
zss, При вводе данных Sostav ///ругается

Добавлено через 2 минуты
zss, Все нашел ошибку у себя спасибо....
0
IMPU
0 / 0 / 0
Регистрация: 08.09.2016
Сообщений: 1
08.09.2016, 06:24 #8
VC++ 2010:
- Проект -> Свойства:"Имя проекта";
-- Свойства конфигурации -> Общее: Набор символов(Использовать много байтовую кодировку);
Если будет ругается на Microsoft .NET Framework то экспериментируем с "Поддержка общеязыковой среды выполнения CLR-среды (/clr)".
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.09.2016, 06:24
Привет! Вот еще темы с ответами:

error C2664: CWnd::MessageBoxW: невозможно преобразовать параметр 2 из "long" в "LPCTSTR" - C++
при компиляции выдаёт ошибку указанную в теме, код: void Clab_12_2Dlg::OnClickedAri() { // TODO: добавьте свой код обработчика...

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

Преобразовать параметр из "WCHAR [260]" в "const char *" - C++
Подскажите пожалуйста, как &quot; преобразовать параметр из &quot;WCHAR &quot; в &quot;const char *&quot;&quot;? Вот,по коду я думаю понятно будет. Если поставить...

Невозможно преобразовать "const char" в "char" - C++
Вот код: void vvod() { char name_of_file; int i; char linetype1; char linetype2; int razmer_pera; struct colour {


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.09.2016, 06:24
Ответ Создать тему
Опции темы

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