Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> строки в vc++60, как объявить 
:(
    Опции темы
icepro
  Дата 5.2.2008, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 20.11.2006

Репутация: нет
Всего: нет



У меня компилер визуал с++ 6.0. Он наотрез отказывается принимать такие куски кода как:
Код

char* str; // для дин. строки

// или


#include <string.h>

string str; 
// или даже 
std::string str;



Принимает только:
Код

char* str[10];
// или
char str[10];

но как потом такие строки сравнивать(посимвольно smile???) и т.д.


А в визуал студии 2005 все идет на ура! Прошу помощи. Как использоавть строки в компилере более ранней версии.
PM MAIL   Вверх
NiJazz
Дата 5.2.2008, 13:19 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

Репутация: нет
Всего: 23



Какую ошибку выдаёт?
PM MAIL   Вверх
icepro
Дата 5.2.2008, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 20.11.2006

Репутация: нет
Всего: нет



ошибка?
ну в случае с чаром говорит что не определена размерность
а в случае со стрингом - неизвестный тип данных
PM MAIL   Вверх
JackYF
Дата 5.2.2008, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



icepro, ошибки компилятора дословно, пожалуйста.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
bronislav
Дата 5.2.2008, 17:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 29.1.2008
Где: Украина::Донецк

Репутация: 2
Всего: 3



Цитата(icepro @ 5.2.2008,  12:08)
У меня компилер визуал с++ 6.0. Он наотрез отказывается принимать такие куски кода как:
Код

char* str; // для дин. строки

// или


#include <string.h>

string str; 
// или даже 
std::string str;



Принимает только:
Код

char* str[10];
// или
char str[10];

но как потом такие строки сравнивать(посимвольно smile???) и т.д.


А в визуал студии 2005 все идет на ура! Прошу помощи. Как использоавть строки в компилере более ранней версии.

Код

char *str = new char[10];



--------------------
user posted image
иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes
PM MAIL   Вверх
N0dwis
Дата 6.2.2008, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 238
Регистрация: 18.9.2007
Где: Луганск

Репутация: нет
Всего: 4



Насколько я помню, для использования stl нужно подключать не файл string.h,  а просто string. string.h - это чисто сишный файл.

Цитата(icepro @  5.2.2008,  12:08 Найти цитируемый пост)
но как потом такие строки сравнивать(посимвольно smile???) и т.д.

А в чем проблема? Есть замечательная функция strcmp. Не нравится, можно свою написать, ничего особо сложного...

Это сообщение отредактировал(а) N0dwis - 6.2.2008, 16:39
PM MAIL   Вверх
icepro
Дата 7.2.2008, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 20.11.2006

Репутация: нет
Всего: нет



Код

#include <string>
#include <string.h>

void main()
{
    std:string str;

    string str2;
}


//-------------------------- log -----------------------

--------------------Configuration: swde - Win32 Debug--------------------
Compiling...
main.cpp
c:\swde\main.cpp(6) : error C2065: 'string' : undeclared identifier
c:\swde\main.cpp(6) : error C2146: syntax error : missing ';' before identifier 'str'
c:\swde\main.cpp(6) : error C2065: 'str' : undeclared identifier
c:\swde\main.cpp(8) : error C2146: syntax error : missing ';' before identifier 'str2'
c:\swde\main.cpp(8) : error C2065: 'str2' : undeclared identifier
Error executing cl.exe.

main.obj - 5 error(s), 0 warning(s)
PM MAIL   Вверх
JackYF
Дата 7.2.2008, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(icepro @  7.2.2008,  11:52 Найти цитируемый пост)
std:string

std::string


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
icepro
Дата 8.2.2008, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 20.11.2006

Репутация: нет
Всего: нет



я понимаю что ::, опечатка!
но ничего не меняется...
PM MAIL   Вверх
JackYF
Дата 8.2.2008, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(icepro @  8.2.2008,  13:36 Найти цитируемый пост)
но ничего не меняется... 

новый исходник в студию, ошибки новые полностью тоже в студию. Телепаты не придут.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Djinn
Дата 8.2.2008, 18:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 250
Регистрация: 18.5.2007

Репутация: нет
Всего: 1



Код


#include <string>
#include <string.h>
void main()
{
    std:string str;
    string str2;
}


если честн, то чтот не догнал, к чему тут:
Код

string str2;

так как сейровно работать не будет и ошибку на 100% выдаст и:
Код

#include <string.h>

так как к string наскок я понимаю некакого отношения не имеет... =\ ???

Код

#include <iostream>
#include <conio.h>
#include <string>
void main()
{
    std:string str;
    str = "String";
    printf("%s\n",str);
    getch();
}


покажи что он скажет...

Это сообщение отредактировал(а) Djinn - 8.2.2008, 18:38
PM MAIL   Вверх
N0dwis
Дата 9.2.2008, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 238
Регистрация: 18.9.2007
Где: Луганск

Репутация: нет
Всего: 4



Поправка.
Вместо
Код

printf("%s\n",str);


Надо писать
Код

printf("%s\n",str.c_str());

PM MAIL   Вверх
warmonger_
Дата 9.2.2008, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: 1
Всего: 3



Цитата(N0dwis @ 9.2.2008,  08:00)
Поправка.
Вместо
Код

printf("%s\n",str);


Надо писать
Код

printf("%s\n",str.c_str());

а лутше

Код

std::cout<<str<<"\n";

--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
Dronchik
Дата 14.2.2008, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Звукач ёмаё
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 1.5.2007

Репутация: 1
Всего: 37



У меня в Visual C++ 6 тоже стринг не работает
Код

#include <iostream>    
#include <conio.h>    
#include <string>    
void main()    
{    
    std:string str;    
    str = "String";    
    printf("%s\n",str);    
    getch();    
}

Цитата

--------------------Configuration: string - Win32 Debug--------------------
Compiling...
string.cpp
e:\program files\microsoft visual studio\myprojects\string\string.cpp(6) : error C2065: 'string' : undeclared identifier
e:\program files\microsoft visual studio\myprojects\string\string.cpp(6) : error C2146: syntax error : missing ';' before identifier 'str'
e:\program files\microsoft visual studio\myprojects\string\string.cpp(6) : error C2065: 'str' : undeclared identifier
e:\program files\microsoft visual studio\myprojects\string\string.cpp(7) : error C2440: '=' : cannot convert from 'char [7]' to 'int'
        This conversion requires a reinterpret_cast, a C-style cast or function-style cast
Error executing cl.exe.

string.exe - 4 error(s), 0 warning(s)

Это в 6 версии Визуал С++ просто нормально не описали стринг в файле string (.h). Прошу тех, кто юзает более поздние версии Студий выложить файл string (.h) для сравнения. Также выкладываю свой файл string (.h) для сравнения.

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  STRING 17,24 Kb


--------------------
Вместо слов делай дело, от которого ты фанатеешь. (с)

PM MAIL WWW ICQ   Вверх
Dronchik
Дата 14.2.2008, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Звукач ёмаё
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 1.5.2007

Репутация: 1
Всего: 37



и заголовочный файл string.h

Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  STRING.H 7,83 Kb


--------------------
Вместо слов делай дело, от которого ты фанатеешь. (с)

PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0607 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.