Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 1
Регистрация: 21.04.2012
Сообщений: 21
1

Ошибка в cannot convert char * to char вроде поправил теперь выводит ересь(

21.04.2012, 19:31. Просмотров 1229. Ответов 4
Метки нет (Все метки)


Всем доброго дня! У меня такая проблемка.... написал программу, но сначала она ругалась на Cannot convert char* to char теперь вроде исправил, но теперь в выводе мне пишет чтото непонятное....Помогите пжалсто =)
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
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>
void main()
{
 
int vhod,b,c,d,e,g ;
FILE *f;
long char  R,res,result;
long char *ed[]={"odin","dva","tri","4etire","piat","sest","sem","vosem","9st"};
long char *des1[]={"desat","odinadcat","dvenacat","trinadcat","4etirnadcat","piatnadcat","sesnadcat","semnadcat","vosemnadcat","deviatnadcat"};
long char *des2[]={"dvadcat","tridcat","sorok","piatdecat","sestdecat","semdecat","vosemdecat","devanosto"};
long char *sot[]={"sto","dvesti","tristo","4etiresto","piatsot","sestsot","semsot","vosemsot","deviatsot"};
clrscr();
f=fopen("p4file.txt","w");
printf ("Please insert 0-999");
//fprintf (f,"Please insert 0-999\n");
scanf("%d",&vhod);
fprintf(f,"Zdannoe 4islo : ", vhod);
if (vhod==0) { fprintf (f,"zero"); printf ("zero"); }
if (vhod>999) { fprintf (f,"Error %d > 0-999",vhod); }
res=0;
R=0;
if ((vhod/100) >0)
        { if ((vhod / 100) < 10)
              { b=vhod/100;
              res=*sot[b]+R; // сначало ругался вот тут из-за отсутствия *....Поставил * теперь вот как есть((((
              vhod=vhod-b*100;
              }
        }
if ((vhod/10) >0)
        { if ((vhod/10) <2)
             {b=vhod;
             res=res+*des1[b]+R;
             vhod=vhod-b*10;
             }
        }
if ((vhod/10)>=2)
        { if ((vhod/10)<10)
             {b=vhod/10;
             res=res+*des2[b]+R;
             vhod-b*10;
             }
        }
if ((vhod/1) <10)
        { if ((vhod /1) > 0)
             {b=vhod/1;
             res=res+*ed[b];
             }
        }
fprintf(f," %c",res);
fclose(f);
 
//getch();
}
Выводить должен что то типо Zdannoe 4islo : sto dvadcat tri а он выводит что то типо Zdannoe 4islo : o...Взарание благодарен
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2012, 19:31
Ответы с готовыми решениями:

Ошибка Cannot convert a char value to money. The char value has incorrect syntax
В отчете (ниже) появляется ошибка Cannot convert a char value to money. The char value has...

DLL, ошибка Cannot convert 'char *' to 'char'
подключал dll по примеру https://www.cyberforum.ru/cpp-builder/thread154847.html // определяем тип...

ошибка в программе (cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*')
int main() { string fileName, currWord, currMax = &quot;&quot;; cin&gt;&gt;fileName; ...

Обойти ошибку: cannot convert argument 1 from 'char [100]' to 'char &'
Примерно выглядит так (я просто показал без лишнего текста) void menu(char &amp;name_user, char...

4
1173 / 886 / 94
Регистрация: 03.08.2011
Сообщений: 2,457
21.04.2012, 19:47 2
Нет такого типа как long char...

И правильно объявлять такие строки как const
C
1
const char *str[] = { "blabla", "blabla" };
Добавлено через 4 минуты
И что это вообще законструкция
Цитата Сообщение от 3a9Iac Посмотреть сообщение
res=res+*des2[b]+R;
? К переменной типа char нельзя прибавлять строку.
1
0 / 0 / 1
Регистрация: 21.04.2012
Сообщений: 21
21.04.2012, 19:49  [ТС] 3
А как мне сделать что бы к этой переменной добавлялася текст?
Мне надо что бы к res добавлялось например сто пятьдесят и тд...
0
0 / 0 / 1
Регистрация: 21.04.2012
Сообщений: 21
21.04.2012, 20:03  [ТС] 5
Дайте пожалуйсто пример как мне его тут вставить...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2012, 20:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Поворот массива на 90 градусов (cannot convert form char to char*)
Пытаюсь повернуть массив на 90 градусов. Понимаю что проблема в преобразовании данных, но не знаю...

Warring: char * convert to const char * при трансляции
Не подскажет ли кто, как при трансляции на gcc убрать этот warring ? В info-gcc описана куча...

выдает ошибку :[C++ Error] Unit1.cpp(30): E2034 Cannot convert 'char' to 'char *' не понимаю в чем дело
//Дано предложение. Найти наибольшее количество идущих подряд пробелов #include &lt;vcl.h&gt;...

Вылезает C2440: '=' : cannot convert from 'const char [7]' to 'char'
В коде есть строки и им нужно присвоить значение, через обычное = вылезает C2440: '=' : cannot...


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

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

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