我知道这对你来说听起来很容易,但我已经在互联网上做了一项研究,但我找不到我想要的东西。 我想从一个字符串中取出多个字符。例如:
char str1[10];
printf("Give me a word: \n") ;
gets(str1);
让我们说我要打字:Stack。如何从此字符串中获取两个并排字符?例如:
char str2[10];
有没有办法按顺序str2 = tac?
答案 0 :(得分:2)
int i;
char str1[] = "Stack";
char str2[10];
for (i = 1; i < 4; i++)
str2[j++] = str1[i];
str2[j] = "\0";
它将返回“tac”。你可以写一个关于这个的简单函数。你的函数应该有2个参数,你想要的第一个字母和你想要的最后一个字母。
所以在这种情况下:
1 - &gt;你要的第一个字母
4 - &gt;你想要的最后一封信
我用Jonathan的解决方案编辑了我的代码。如果你不理解这个解决方案,你也可以看一下:
for (i = 1, j = 0; i < 4 && j < 3; i++, j++)
str2[j] = str1[i];
答案 1 :(得分:0)
在偏移量处启动指针并遍历字符串,直到找到空字节,并将新字符串存储在其他位置。
答案 2 :(得分:-1)
http://www.tutorialspoint.com/c_standard_library/c_function_gets.htm
我认为这就是你要找的东西。 :)