#include <iostream>
using namespace std;
char a[50];
void addSpace (){
cin.getline (a,50);
const char * x = a;
while (x != a + sizeof(a)) {
cout << *x << " ";
++x;
}
}
int main() {
addSpace();
cout << endl;
return 0;
}
Я довольно новичок. Я сделал этот код вчера вечером, которым я действительно горжусь, но он только для чтения. Это на самом деле не изменение значений массива. Можно ли создать функцию с помощью указателей, например, допустим, что мы вводим слово "Hello!" , чтобы изменить его таким образом, чтобы a [0] = 'H', a [1] = '', a [2] = 'e', a [3] = '' a [4] = 'l' a [5] = '' ... и так далее? Использование указателей!
Спасибо!
Edit: я думаю, что на самом деле сделал это, но для этого требуется еще один массив символов. Есть ли способ использовать только без b?
#include <iostream>
using namespace std;
char a[50];
char b[sizeof(a)*2];
void addSpace (){
cin.getline (a,50);
char * x = a;
char * y = b;
while (x != a + sizeof(a)) {
*y++=*x++;
*y++=' ';
}
cout << b;
}
int main() {
addSpace();
cout << endl;
return 0;
}