【问题标题】:Reading char* from specific index C从特定索引 C 读取 char*
【发布时间】:2014-04-25 11:42:54
【问题描述】:

我有一个char *message;,其中包含一些内容。 我希望从特定索引(例如 20)中读取此消息,直到 char* 结束。有什么聪明的方法可以做到这一点吗?我一直在查看memcpy() 以及将“子字符串”从message 复制到新的char *tmp; 的可能性,但我似乎无法弄清楚如何从该特定索引开始(例如 20 ) 并复制到message 的结尾——而不是从message 的开头开始。

任何帮助表示赞赏。干杯!

【问题讨论】:

  • char *tmp = message + 20;
  • &message[20] 也可以。

标签: c string char memcpy


【解决方案1】:

你可以这样尝试:

char *tmp= message + 20;

【讨论】:

  • @matkapluku 但是,如果您想修改它而不修改原始字符串,它仍然指向与原始字符串相同的内存,您可以使用 strcpy(dest, message+20);
【解决方案2】:

这是一个测试你需要的例子:

main()
{

   char *buff = "hello_word_test";
   char *tmp;

   printf("%s \n",buff);
   printf("%s \n",buff+5);


}

结果:

    hello_word_test 
   _word_test 

5 是一个索引,你可以根据需要改变它

【讨论】:

    猜你喜欢
    • 2013-09-07
    • 2022-11-02
    • 1970-01-01
    • 1970-01-01
    • 2018-11-14
    • 1970-01-01
    • 2016-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多