|
|
|
|
#include <iostream>
#include <clocale>
using namespace std;
void foo(char*, int);
int main(void) {
setlocale(LC_CTYPE, ""); //
char string[] = { 'П', 'р', 'и', 'в', 'е', 'т' ,',', ' ', 'м', 'и', 'р', '!' };
cout << string << endl;
int length = sizeof(string) / sizeof(char);
foo(string, length);
return 0;
}
void foo(char *string, int length){
char tmp[length];
for (int i = 0; i < length; ++i){
tmp[length - i - 1] = *string;
++string;
}
cout << tmp;
}
|
| |
|
|
|
|
|
|
|
для: Случайный посетитель
(25.12.2009 в 15:28)
| | Не пойму где 1 байт? и откуда опять же каракули
#include <iostream>
#include <clocale>
using namespace std;
char* stroka_naoborot(char*, int);
int main(void) {
setlocale(LC_CTYPE, "");
char *string1 = 0; //
char string[] = { 'с', 'л', 'о', 'в', 'о' };
cout << string << endl;
int length = sizeof(string) / sizeof(char);
cout << "размер массива string: " << sizeof(string) << " байт" << endl;
cout << "размер массива string: " << length << " элементов" << endl;
string1 = stroka_naoborot(string, length);
cout << "размер массива string1: " << sizeof(string1) << " байт" << endl;
cout << "размер массива string1: " << sizeof(string1) / sizeof(char) << " элементов" << endl;
cout << string1 << endl;
return 0;
}
char* stroka_naoborot(char *string, int length){
char *arr = new char[length];
for (int i = 0; i < length; ++i){
arr[length - i - 1] = *string;
++string;
}
return arr;
}
|
| |
|
|
|
|
|
|
|
для: Случайный посетитель
(25.12.2009 в 15:28)
| |
void foo(char*, int);
int main(void)
{
setlocale(LC_CTYPE, ""); //
char string[] = { 'П', 'р', 'и', 'в', 'е', 'т' ,',', ' ', 'м', 'и', 'р', '!', '\0' };
cout << string << endl;
int length = sizeof(string);
foo(string, length);
return 0;
}
void foo(char *string, int length)
{
char tmp[80];
int i = 0;
while( length-- >= 0 )
{
tmp[i++] = string[length];
}
*(tmp + i) = '\0' ;
cout << tmp;
}
|
| |
|
|
|