【问题标题】:Array of Pointers to Strings in C [closed]C中指向字符串的指针数组[关闭]
【发布时间】:2013-04-30 08:54:18
【问题描述】:

编写一个 prog 来反转存储在以下指向字符串的指针数组中的字符串:

char *array_str_ptr={ “布琳达·罗伊” “拉克什·拜德” “内哈萨克森” “安吉耆那教” }

【问题讨论】:

  • 很好的家庭作业。希望你弄清楚。祝你好运!
  • SO 规则的一点提示:如果您遇到困难,我们很乐意为您提供帮助。但只有在你证明有能力帮助自己之后。我们不是来为你做你的工作的。此外:“反向”。反转什么?命令?换一种类型?字母?
  • @RefugnicEternium 就是这样,我没明白。顺便说一句,我擅长 C,我在第 11 个标准中学习了 C,bt 现在我被这个“指向字符串的指针数组”所困扰。我猜是颠倒字符串的顺序
  • @ibi0tux thx,那个网站好不好???可以给我解决办法吗

标签: c arrays pointers


【解决方案1】:

由于问题既没有结束也没有回答,这里有两种可能的方法:

'颠倒字符串的顺序:

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 to string' -> 这是一种 C++ 方法,因为它使用了 std::container 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 to string' -> 将不同元素组成一个字符串。

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]);

这会将四个字符串连接成一个长字符串,没有任何空格或类似的东西。执行此操作的方法更为复杂,但这是最快的。

关于手头的任务:你为什么不问问给你这个任务的人,他们到底是什么意思?它可以使您免于上述的 cmets。

【讨论】:

    猜你喜欢
    • 2021-06-28
    • 2012-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多