char mas[128]="abcdef";
char a=mas[0];
char b=mas[1];
strcat(a,b);
cout <<a<<"\n";
Помогите с strcat()
Столкнулся с проблемкой:
Имеется char-овый массив - требуется брать нужные элементы массива и лепить из них строчки.
Как я это вижу:
Код:
OUT: my.cpp: error C2664: 'strcat' : cannot convert parameter 1 from 'char' to 'char *'
В ответ я изменил
Код:
char a=mas[0];
char b=mas[1];
char b=mas[1];
Код:
char *a=&mas[0];
char *b=&mas[1];
char *b=&mas[1];
Я начинающий и извиняюсь за невежества если такие имеют место. Если написанное выше полный бред подскажите иное решение моей задачи.
З.Ы. компилятор: VC++6
a и b используют адреса mas, - это не есть хорошо,т.к. изменяя a или b, ты изменяешь mas. ВЫДЕЛЯЙ под указатели место, прежде чем их использовать, т.е.
char* a =new char[count];//count =кол-во символов
Я не совсем понял, что ты хочешь получить в итоге
a="ab" или a="abcdefbcdef":
char mas[128]="abcdef";
char a[128];
strcpy(a,mas);
strcat(a,&mas[1]);//a="abcdefbcdef".
//или
strncpy(a,mas,1);
a[1]=0;
strncat(a,&mas[1],1);//a="ab"
Цитата:
Я не совсем понял, что ты хочешь получить в итоге
на выходе - a="ab"
Далее лепить строчку без проблем получается ("ab" -> "abd" к примеру) поскольку после первого выполнения strncat() нуль-символ автоматически дописывается:)