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

Конкатенация строк - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.81
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 20:23     Конкатенация строк #1
Нужно объединить три строки: "txt/" + i + ".txt" в char* URL. i переменная в цикле.

Сделал так:
C++
1
2
3
strcpy(URL, "txt/\0");
strcat(URL, (char*)i);
strcat(URL, ".txt\0");
Ошибка:
d:\c++\fonbettoto\fonbettoto\fonbettoto.cpp(271): error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

Добавил:
C++
1
#define _CRT_SECURE_NO_WARNINGS
Ошибка:
1>d:\c++\fonbettoto\fonbettoto\fonbettoto.cpp(1): warning C4603: '_CRT_SECURE_NO_WARNINGS' : macro is not defined or definition is different after precompiled header use
1> Add macro to precompiled header instead of defining here
1> d:\c++\fonbettoto\fonbettoto\fonbettoto.cpp(4) : use of precompiled header
1>d:\c++\fonbettoto\fonbettoto\fonbettoto.cpp(271): error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

Есть идеи? Можно принципиально код поменять.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.04.2013, 20:23     Конкатенация строк
Посмотрите здесь:

C++ Конкатенация строк
C++ конкатенация строк
C++ Конкатенация строк
конкатенация строк C++
Конкатенация строк C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
coloc
погромист
 Аватар для coloc
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
02.04.2013, 20:28     Конкатенация строк #2
Consider using strcpy_s instead
Может попробуйте эту функцию, вместо strcpy
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
02.04.2013, 20:30     Конкатенация строк #3
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    string word1("Hello "), word2("world"), word3("!");
    word1 += word2 + word3;
 
    cout << word1 << endl;
 
    cout << "\n\n";
    return 0;
}
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 21:14  [ТС]     Конкатенация строк #4
Цитата Сообщение от yoghurt92 Посмотреть сообщение
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    string word1("Hello "), word2("world"), word3("!");
    word1 += word2 + word3;
 
    cout << word1 << endl;
 
    cout << "\n\n";
    return 0;
}
как i добавить в строку?
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
02.04.2013, 21:20     Конкатенация строк #5
psdmaster, а что в вашем случае i?

Добавлено через 3 минуты
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    char i = 'i';
    string word1("Hello "), word2("world"), word3("!");
    word1 += word2 + word3 + i;
 
    cout << word1 << endl;
 
    cout << "\n\n";
    return 0;
}
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 21:25  [ТС]     Конкатенация строк #6
i - переменная в цикле от 1 до 10

Цитата Сообщение от yoghurt92 Посмотреть сообщение
psdmaster, а что в вашем случае i?

Добавлено через 3 минуты
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    char i = 'i';
    string word1("Hello "), word2("world"), word3("!");
    word1 += word2 + word3 + i;
 
    cout << word1 << endl;
 
    cout << "\n\n";
    return 0;
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11827 / 6806 / 769
Регистрация: 27.09.2012
Сообщений: 16,878
Записей в блоге: 2
Завершенные тесты: 1
02.04.2013, 21:27     Конкатенация строк #7
Цитата Сообщение от psdmaster Посмотреть сообщение
Add macro to precompiled header instead of defining here
Не, не то выделил?
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
02.04.2013, 21:40     Конкатенация строк #8
psdmaster, ну так и что?

Добавлено через 6 минут
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    
    string word1("Hello "), word2("world"), word3("!");
    word1 += word2 + word3;
    for(char i = '1'; i <= '9'; ++i)
        word1 += i;
 
    cout << word1 << endl;
 
    cout << "\n\n";
    return 0;
}
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 21:46  [ТС]     Конкатенация строк #9
Еще раз.
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
#define _CRT_SECURE_NO_WARNINGS
 
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string.h>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    string URL;
    int i = 0;
    char sym;
    for (i = 0; i < 10; ++i)
    {
        URL = "txt/" + i;
        URL += ".txt";
        cout << URL;
 
        ifstream tirazh(URL);
        tirazh.unsetf(ios::skipws);
        tirazh >> sym;
        tirazh.close();
    }
 
    return 0;
}
Выдает ошибку:

Код
1>------ Build started: Project: ConsoleApplication1, Configuration: Debug Win32 ------
1>  stdafx.cpp
1>  ConsoleApplication1.cpp
1>d:\c++\consoleapplication1\consoleapplication1\consoleapplication1.cpp(1): warning C4603: '_CRT_SECURE_NO_WARNINGS' : macro is not defined or definition is different after precompiled header use
1>          Add macro to precompiled header instead of defining here
1>          d:\c++\consoleapplication1\consoleapplication1\consoleapplication1.cpp(3) : use of precompiled header
1>d:\c++\consoleapplication1\consoleapplication1\consoleapplication1.cpp(19): error C2679: binary '<<' : no operator found which takes a right-hand operand of type 'std::string' (or there is no acceptable conversion)
1>          d:\microsoft visual studio 11.0\vc\include\ostream(695): could be 'std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,const char *)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(742): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,char)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(780): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,const char *)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(827): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,char)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(953): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,const signed char *)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(960): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,signed char)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(967): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,const unsigned char *)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(974): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,unsigned char)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(984): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>,std::string>(std::basic_ostream<_Elem,_Traits> &&,const _Ty &)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>,
1>              _Ty=std::string
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(1101): or       'std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>>(std::basic_ostream<_Elem,_Traits> &,const std::error_code &)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(201): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(std::basic_ostream<_Elem,_Traits> &(__cdecl *)(std::basic_ostream<_Elem,_Traits> &))'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(207): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(std::basic_ios<_Elem,_Traits> &(__cdecl *)(std::basic_ios<_Elem,_Traits> &))'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(214): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(std::ios_base &(__cdecl *)(std::ios_base &))'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(221): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(std::_Bool)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(241): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(short)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(275): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(unsigned short)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(295): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(int)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(320): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(unsigned int)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(340): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(long)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(360): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(unsigned long)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(381): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(__int64)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(401): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(unsigned __int64)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(422): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(float)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(442): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(double)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(462): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(long double)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(482): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(const void *)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          d:\microsoft visual studio 11.0\vc\include\ostream(502): or       'std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::operator <<(std::basic_streambuf<_Elem,_Traits> *)'
1>          with
1>          [
1>              _Elem=char,
1>              _Traits=std::char_traits<char>
1>          ]
1>          while trying to match the argument list '(std::ostream, std::string)'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


Цитата Сообщение от yoghurt92 Посмотреть сообщение
psdmaster, ну так и что?

Добавлено через 6 минут
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    
    string word1("Hello "), word2("world"), word3("!");
    word1 += word2 + word3;
    for(char i = '1'; i <= '9'; ++i)
        word1 += i;
 
    cout << word1 << endl;
 
    cout << "\n\n";
    return 0;
}
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
02.04.2013, 21:51     Конкатенация строк #10
psdmaster, что вы вообще хотите сделать?
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 22:00  [ТС]     Конкатенация строк #11
Цитата Сообщение от yoghurt92 Посмотреть сообщение
psdmaster, что вы вообще хотите сделать?
путь к файлам: "txt/"
расширение файлов: ".txt"
имена: от 1 до 10

Нужно открывать файлы для работы с ними
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
02.04.2013, 22:20     Конкатенация строк #12
psdmaster,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    string format;
 
    for(char i = '0'; i <= '9'; ++i)
    {
        string URL("txt/");
        URL += i + format;
        cout << URL << endl;
    }
 
    return 0;
}
а теперь делай что хочешь.

Добавлено через 6 минут
psdmaster, тут без пути, я создал несколько файлами в папке с программой, открывал, считывал и выводил на экран, как путь добавить думаю сам уже догадаешься

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    string format(".txt"), str;
 
    for(char i = '0'; i <= '2'; ++i)
    {
        string URL(way + i + format);
        
        ifstream fin(URL);
        getline(fin, str, '\n');
 
        cout << str << endl;
    }
 
    return 0;
}
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 23:12  [ТС]     Конкатенация строк #13
yoghurt92,

Немного изменил:
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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    string format(".txt"), str;
 
    for(char i = '0'; i <= '2'; ++i)
    {
        string URL("txt/" + i + format);
        
        ifstream fin(URL);
        cout << URL << endl;
        
        getline(fin, str, '\n');
 
        cout << str << endl;
        fin.close();
    }
 
    getchar();
 
    return 0;
}
Выводит шляпу какую-то:
Миниатюры
Конкатенация строк  
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 23:15  [ТС]     Конкатенация строк #14
И что делать если файлов больше 10? в 'i' помещается только один символ.
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
02.04.2013, 23:33     Конкатенация строк #15
psdmaster, потому что путь должен быть латинскими буквами.

Добавлено через 2 минуты
psdmaster, и лучше придумать название файлами, а не цифры...
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
02.04.2013, 23:36  [ТС]     Конкатенация строк #16
yoghurt92,
Нет дело не в этом. В скобках должны быть обязательно переменные. Такая строчка почему-то не допускается:
C++
1
string URL("txt/" + i + format);
Ну да бог с ним. Что делать с этим:

Цитата Сообщение от psdmaster Посмотреть сообщение
И что делать если файлов больше 10? в 'i' помещается только один символ.
Добавлено через 1 минуту
Цитата Сообщение от yoghurt92 Посмотреть сообщение
psdmaster, потому что путь должен быть латинскими буквами.

Добавлено через 2 минуты
psdmaster, и лучше придумать название файлами, а не цифры...
Число файлов будет расти. Вплоть до 1000.txt
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
03.04.2013, 00:08     Конкатенация строк #17
psdmaster,

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
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
 
string IntToStr(int x)
{
    stringstream sst;
    sst << x;
    return sst.str();
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    string format(".txt"), str;
    stringstream r;
 
    for(int i = 1; i <= 1000; ++i)
    {
        string value(IntToStr(i));
        string URL(value + format);
        
        ifstream fin(URL);
        getline(fin, str, '\n');
 
        cout << str << endl;
    }
 
    return 0;
}
Програмер_80лвл
15 / 15 / 1
Регистрация: 17.10.2012
Сообщений: 96
Записей в блоге: 1
03.04.2013, 00:14     Конкатенация строк #18
пфф пацан это делается просто :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    char *Txt=new char[4];
    Txt="txt/";
    char *txt=new char[5];
    txt=".txt/";
    char *tSave=new char[10];
    for(int i=0;i<10;i++)
    {
        char *z=new char[2];
        itoa(i,z,10);
        //вот тебе i в цикле и без всяких там приколов
        // Тут можеш писать то что тебе нада с этой i
    }
    //Здесь я напишу то как же все-же добавляется Txt+i+txt  уменя i будет числом 5
    char *I=new char[1];
    I="5";
    strcpy(tSave,Txt);
    strcat(tSave,I);
    strcat(tSave,txt);
    // все...
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
03.04.2013, 00:19     Конкатенация строк #19
Цитата Сообщение от Програмер_80лвл Посмотреть сообщение
char *Txt=new char[4]
тогда уже
C++
1
char *Txt=new char[5]
, про нуль символ забыли?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.04.2013, 00:26     Конкатенация строк
Еще ссылки по теме:

C++ Конкатенация строк
Конкатенация строк C++
C++ Конкатенация строк s1 и s2

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

Или воспользуйтесь поиском по форуму:
Програмер_80лвл
15 / 15 / 1
Регистрация: 17.10.2012
Сообщений: 96
Записей в блоге: 1
03.04.2013, 00:26     Конкатенация строк #20
а вот тебе с string :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    string URL;
    
    string Txt="txt/";
    string txt=".txt";
    //для преобразование из const char* в char* тебе понадобится
    char *t=new char[z.size()];
    // i ->
    for(int i=0;i<10;i++)
    {
        string z;
        t=(char*)z.c_str();
        itoa(i,t,10);
    }
    URL.append(Txt.c_str());
    URL.append(t);
    URL.append(txt);
Добавлено через 3 минуты
Цитата Сообщение от yoghurt92 Посмотреть сообщение
тогда уже
C++
1
char *Txt=new char[5]
, про нуль символ забыли?
а зачем он вообще ты когда копируеш он то не копируется и при вставки то тож
на своем опыте знаю=)
и ещё когда работаеш с char нада быть внимателен с этой штукой :
1) лучше всего создавать динамически
2) string есть куча реализованых методов для работы с ними
и не нада использовать strcpy,strcat и тому подобное !
3) char только когда тебе нужен всего 1-10 символов для вставки или для какого-то шаблончика =)
Yandex
Объявления
03.04.2013, 00:26     Конкатенация строк
Ответ Создать тему
Опции темы

Текущее время: 19:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru