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

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

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

Код, работающий в VS2003, перестаёт работать в VS2008 - C++

03.12.2008, 21:07. Просмотров 1013. Ответов 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
#include "stdafx.h"
#include <complex>
#include <iostream>
#include "math.h"
#include <conio.h>
#include <atlstr.h>
#define PI 3.14159265
//#include <fstream>
using namespace std;
CString filename(CString mask_name1,CString filename1);
 
CString filename(CString mask_name1,CString filename1)
{
    CString slash("/"), txt(".txt"),str;
    str.Format("%s%s%s%s",mask_name1,slash, filename1,txt);
    
    return str;
}
 
void  main(void)
{
  
   
    getch();
 return;
}
ошибка на строку
C++
1
str.Format("%s%s%s%s",mask_name1,slash, filename1,txt);
Error 1 error C2664: 'void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)' : cannot convert parameter 1 from 'const char [9]' to 'const wchar_t *' c:\documents and settings\я\мои документы\visual studio projects\complex\complex\complex.cpp 18 complex
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2008, 21:07     Код, работающий в VS2003, перестаёт работать в VS2008
Посмотрите здесь:

Как создать папку (а не файл) в VS2003? C++
не хочет работать код(((( C++
C++ Код после занесения в функцию перестаёт работать
C++ Как заставить код работать на x32 и x64?
Почему не хочет работать код? C++
CRC32 C++. Не могу заставить работать готовый код C++
C++ После вызова рекурсивной функции программа перестаёт работать
C++ Прокомментировать код, работающий с очередью и стеком
C++ Привести матрицу к треугольному виду Гауссом (не могу найти работающий код)
C++ Ошибка из-за разных версий VS или "Как вытащить работающий код из проекта"
C++ Перенос старого проекта с VS2003 на VS2013
C++ При разбиении на модули программа перестаёт работать

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2891 / 1240 / 78
Регистрация: 27.05.2008
Сообщений: 3,345
03.12.2008, 21:37     Код, работающий в VS2003, перестаёт работать в VS2008 #2
const wchar_t * - говорит о том, что текущая реализация CString в твоем проекте - уникодная. А строка формата - char *, т.е. просто ANSI.
Либо сними в проекте опцию use UNICODE, либо пиши L"%s%s%s%s" - что больше понравится...

А еще лучше все строковые литералы в программе оборачивать в универсальный макрос _T("тут строковый литерал").
И void main поправь - нет такой функции по Стандарту, есть int main(). Более другой компилятор (например, GCC) выдал бы тут еще одну ошибку.
Beliy_shum
1 / 1 / 0
Регистрация: 10.08.2008
Сообщений: 65
03.12.2008, 21:54  [ТС]     Код, работающий в VS2003, перестаёт работать в VS2008 #3
спасибо тебе большое!!!!!!
сколько времени я мучился((((((((((((((((((((((((((((((((((
ппц............
Yandex
Объявления
03.12.2008, 21:54     Код, работающий в VS2003, перестаёт работать в VS2008
Ответ Создать тему
Опции темы

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