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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.95
S@nchezzz
3 / 3 / 0
Регистрация: 17.12.2008
Сообщений: 51
#1

Cannot convert - C++

11.03.2010, 14:34. Просмотров 3097. Ответов 8
Метки нет (Все метки)

Прошу прощения за столь ламерский вопрос. При попытке запустить прогу вылетает сообщение:
[C++ Error] Unit1.cpp(15): E2034 Cannot convert 'char *' to 'char'
[C++ Error] Unit1.cpp(16): E2034 Cannot convert 'FILE *' to 'FILE'
[C++ Error] Unit1.cpp(17): E2034 Cannot convert 'int' to 'const void *'
[C++ Error] Unit1.cpp(17): E2342 Type mismatch in parameter '__ptr' (wanted 'const void *', got 'char')
[C++ Error] Unit1.cpp(17): E2034 Cannot convert 'FILE' to 'FILE *'
[C++ Error] Unit1.cpp(17): E2342 Type mismatch in parameter '__stream' (wanted 'FILE *', got 'FILE')
[C++ Error] Unit1.cpp(18): E2034 Cannot convert 'FILE' to 'FILE *'
[C++ Error] Unit1.cpp(18): E2342 Type mismatch in parameter '__stream' (wanted 'FILE *', got 'FILE')
[C++ Error] Unit1.cpp(20): E2034 Cannot convert 'FILE *' to 'FILE'
[C++ Error] Unit1.cpp(21): E2034 Cannot convert 'int' to 'void *'
[C++ Error] Unit1.cpp(21): E2342 Type mismatch in parameter '__ptr' (wanted 'void *', got 'char')
[C++ Error] Unit1.cpp(21): E2034 Cannot convert 'FILE' to 'FILE *'
[C++ Error] Unit1.cpp(21): E2342 Type mismatch in parameter '__stream' (wanted 'FILE *', got 'FILE')
[C++ Error] Unit1.cpp(22): E2034 Cannot convert 'FILE' to 'FILE *'
[C++ Error] Unit1.cpp(22): E2342 Type mismatch in parameter '__stream' (wanted 'FILE *', got 'FILE')
[C++ Warning] Unit1.cpp(25): W8004 'f' is assigned a value that is never used
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include <stdio.h>
#include <windows.h>
#pragma hdrstop
#pragma argsused
 
int main(int argc, char* argv[])
{
        char a;
        a = "text";
        FILE *f = fopen("file.txt", "w+");
        fwrite(a, char(a), 1, *f);
        fclose(*f);
 
        *f = fopen("file.txt", "r");
        fread(a, char(a), 1, *f);
        fclose(*f);
        system("pause");
        return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2010, 14:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Cannot convert (C++):

convert - C++
как преобразовать uintmax_t в string либо char*

cannot convert parametr - C++
Здравствуйте, у меня проблемка, программа ругается не пойму на что. Если можете исправьте пожалуйста. #include&lt;iostream&gt; #include...

Error: cannot convert - C++
Добрый вечер. Ошибки: main.cpp:17:39: warning: extended initializer lists only available with -std=c++11 or -std=gnu++11 ...

cannot convert parameter 1 from - C++
Доброй ночи, вот написал програмку, не пойму почему ругается? Если не ошибаюсь нужно выделить память под массив? Но как это правильно...

Cd key convert - C++
Здраствуйте, есть некая программа, установщик который при запуске запрашивает ключ установки вот такого вида: ...

Cannot convert 'char *' to 'int' - C++
Ребят, как перевести 'char *' to 'int'. int n; n= atoi(argv); не катит. Что посоветуете?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
oxotnik
1590 / 1067 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
11.03.2010, 14:38 #2
C++
1
char *a = "text";
0
S@nchezzz
3 / 3 / 0
Регистрация: 17.12.2008
Сообщений: 51
11.03.2010, 15:02  [ТС] #3
Исправил проблему дав юзеру самому определить значение переменной (cin >> a
Теперь столкнулся с другой проблемой. Записывает только 1 символ. Вот исправленый код:
C++
1
2
3
4
5
6
char a;
        cout << "Enter a:";
        cin >> a;
        FILE *file = fopen("file.txt", "w+");
        fwrite(&a, sizeof(a), 1, file);
        fclose(file);
0
insideone
Модератор
Автор FAQ
3639 / 918 / 49
Регистрация: 10.01.2010
Сообщений: 2,469
11.03.2010, 17:43 #4
Цитата Сообщение от S@nchezzz Посмотреть сообщение
Записывает только 1 символ
Так char a; и есть 1 символ
Вот так будет лучше
C++
1
2
3
4
5
6
7
8
9
10
int main()
{
    char a[10];
    cout << "Enter a:";
    cin >> a;
    FILE *file = fopen("file.txt", "w+");
    fwrite(&a, strlen(a), 1, file);
    fclose(file);
return 0;
}
0
brine38
1 / 1 / 1
Регистрация: 09.04.2015
Сообщений: 16
07.06.2015, 07:15 #5
Цитата Сообщение от insideone Посмотреть сообщение
FILE *file = f.open("file.txt", "w+");
* * f.write(&a, strlen(a), 1, file);
* * f.close(file);
Разве точку не надо ставить?!? 0_0
0
Croessmah
Эксперт CЭксперт С++
13214 / 7485 / 843
Регистрация: 27.09.2012
Сообщений: 18,401
Записей в блоге: 3
Завершенные тесты: 1
07.06.2015, 07:27 #6
brine38, какие точки? Это Си'шные функции.

P.S. некропост
0
brine38
1 / 1 / 1
Регистрация: 09.04.2015
Сообщений: 16
07.06.2015, 12:42 #7
Croessmah, Вы хотите сказать, что несмотря ни на что здесь не нужны точки?
"Форум программистов > Форум C++ > Форум С++ для начинающих"
0
Рыжий Лис
Просто Лис
308 / 255 / 70
Регистрация: 17.05.2012
Сообщений: 1,050
Записей в блоге: 4
07.06.2015, 13:01 #8
C++
1
2
3
FILE *file = fopen("file.txt", "w+");
fwrite(&a, strlen(a), 1, file);
fclose(file);
C++
1
2
3
4
fstream file;
file.open("file.txt", ios::out);
file << a;
file.close();
0
DrOffset
7141 / 4282 / 964
Регистрация: 30.01.2014
Сообщений: 7,084
07.06.2015, 14:10 #9
Цитата Сообщение от brine38 Посмотреть сообщение
"Форум программистов > Форум C++ > Форум С++ для начинающих"
С++ позволяет работать в той парадигме, которая нужна программисту. Хочешь писать на С++ как на С - пиши, язык не будет тебе препятствовать (разве что добавится более строгая типизация).
Поэтому стандартная библиотека С полностью доступна для использования в С++.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2015, 14:10
Привет! Вот еще темы с ответами:

Convert C++ TO C or how Add Dll to C - C++
Наверно тупой вопрос, но я не нашел ответа потому, что поиском не найдешь&quot;C++ в C&quot; на форуме. и в инете тоже нет. Можно ли как-то...

error: cannot convert to in assigment - C++
Помогите найти ошибку. Компилятор выдает - in constructor 'LudziPW::LudziPW(int)' : (115) error: cannot convert 'LudziPW**' to...

Ошибка: cannot convert parameter - C++
Есть кусок кода (писал спец.) USES_CONVERSION; static char szBuffer; sprintf( szBuffer, _T('%d'), val );При компиляции...

Cannot convert 'void' to 'bool' - C++
Всем привет! Уважаемые программисты подскажите пожалуйста, при компиляции ошибка Unit1.cpp(21): E2034 Cannot convert 'void' to 'bool'...


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

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

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