Non capisco dove sia l'errore....Mi copia solo la prima stringa e non la seconda nella stringa finale...
#include <iostream>
#include <cstring>
using namespace std;
const int np = 500;
char concatenazione (char* str1, char* str2, int dim1, int dim2) {
char* pstrf = new char [dim1 + dim2 + 1];
for (int k = 0; k <= dim1 + dim2; k++){
if (k <= dim1){
pstrf[k] = *(str1 + k);
}
if (k > dim1){
pstrf[k] = *(str2 + k);
}
}
cout << pstrf << endl;
}
int main () {
char strA[np];
char strB[np];
cout << "Inserire la prima stringa" << endl;
cin >> strA;
cout << "Inserire la seconda stringa" << endl;
cin >> strB;
char* pstrA = strA;
char* pstrB = strB;
int dimA = strlen(strA);
int dimB = strlen(strB);
char z = concatenazione (pstrA, pstrB, dimA, dimB);
}