[ C++ ]Problem z konwersją char* na char

0

Witam.

Jestem początkującym w C++ i trafił mi się drobny błąd w funkcji ( char ), mianowicie:


c++:

#include <cstdlib>
#include <iostream>

using namespace std;
int ktoryScreen = 0;
char ktoryScreen2[] = "";
char mainFilePath[] = "C:\Temp\" ;
char destinatedFilePath[] = "C:\" ;

void tworzenieNazwyScreena()
{
sprintf(ktoryScreen2, "%d%s", ktoryScreen, ".bmp");
}

char tworzenieSciezkiPliku(char sciezkaWyjsciowa[], char ktoryScreen3[])
{
sprintf(sciezkaWyjsciowa, "%s", ktoryScreen3);
return sciezkaWyjsciowa;
}

int main(int argc, char *argv[])
{

tworzenieNazwyScreena();
cout << ktoryScreen2 << endl;
cout << tworzenieSciezkiPliku(mainFilePath, ktoryScreen2)<< endl;
cout << tworzenieSciezkiPliku(destinatedFilePath, ktoryScreen2) << endl;

system("PAUSE");
return EXIT_SUCCESS;

}


Program ma na celu stworzenie ścieżki do pliku w zależności od jego nazwy ( ktoryScreen ) wyrażonej za pomocą liczby jak i ścieżki alternatywnej - docelowej przy kopiowaniu.

Błąd, który otrzymuję jest taki:

> 
```cpp
c++:

 C:\Asia\Funkcje_zamiana_char\main.cpp In function `char tworzenieSciezkiPliku(char*, char*)':
18 C:\Asia\Funkcje_zamiana_char\main.cpp invalid conversion from `char*' to `char'
 C:\Asia\Funkcje_zamiana_char\Makefile.win [Build Error]  [main.o] Error 1

Wiem, że chodzi o pointers ( wskaźniki ) przy przekazywaniu w return tylko jakoś niezbyt potrafię to ogarnąć.

Z góry dziękuję za pomoc =)

2

Ten kod jest zły od początku do końca. Olej to. Zapomnij o char i char *. Poczytaj o std::string i już nigdy nie używaj char * do zabaw z napisami.

http://www.cplusplus.com/reference/string/string/

0

Okej. Jednakże co w przypadku

CopyFileA(,,,)

Gdzie pobiera (char, char, bool)


 String niezbyt tutaj pasuje?

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0