2013-05-06 5 views
-9

Написать прогу для обратнога строки, хранящейся в следующем массиве указателей на строки:Массива указателей на строки в C

символ * array_str_ptr = { «Brinda Рой» «Ракеш Baid» «Нех Саксен " „ANKIT джайном“ }

+10

Хорошее домашнее задание. Надеюсь, ты это выяснишь. Удачи! –

+3

[hahaha] (http://www.scribd.com/doc/65100585/C-Assingments-Day5) – ibi0tux

+2

Небольшой указатель на правила SO: Мы любим помочь вам, если вы застряли. Но только после того, как вы окажетесь в состоянии помочь себе. Мы здесь не для того, чтобы твоя работа для тебя. Кроме того: «Реверс». Обратно, что? Приказ? К другому типу? Письма? –

ответ

2

Поскольку вопрос был не закрытым и не ответил, здесь возможны два подхода:

«Обратный порядок строк:

char *array_str_ptr={ "Brinda Roy", "Rakesh Baid", "Neha Saxena", "Ankit Jain" }; 
char *Reversed[4]; 

for(int i = 0; i < 4; ++i) 
    Reversed[i] = array_str_ptr[4-i]; 

Этот подход копирует ссылки указателя в обратном порядке в другой буфер.

«Reverse для строки» -> Это C++ - подход, так как он использует станд :: контейнер string

#include <string> 
char *array_str_ptr={ "Brinda Roy", "Rakesh Baid", "Neha Saxena", "Ankit Jain" }; 
std::string Strings[4]; 

for(int i = 0; i < 4; ++i) 
    Strings[i] = array_str_ptr[i]; 

«Reverse для строки» -> Делает одну строку из различных элементов ,

char *array_str_ptr={ "Brinda Roy", "Rakesh Baid", "Neha Saxena", "Ankit Jain" }; 
char Buf[50]; 

Buf[0] = 0; 
for(int i = 0; i < 4; ++i) 
    strcat(Buf, array_str_ptr[i]); 

Этот символ объединит четыре строки в одну длинную строку без каких-либо пробелов и т.п. Более сложные способы сделать это, но это самое быстрое.

Относительно задачи: почему бы вам не спросить того, кто дал вам это задание, что они на самом деле имели в виду? Это может спасти вас от комментариев, подобных приведенным выше.

Смежные вопросы