21xrx.com
2024-11-22 08:21:07 Friday
登录
文章检索 我的文章 写文章
如何在c++中结束字符串数组的输入?
2023-07-02 19:10:48 深夜i     --     --
C++ 字符串数组 输入 结束 Null

在 C++ 中,我们可以使用字符串数组来存储多个字符串。但是,在输入这些字符串时,我们需要知道何时结束输入以便程序可以正确地处理这些数据。下面介绍几种常用的方法来结束字符串数组的输入。

1. 使用特殊字符

我们可以在输入字符串数组时,使用一个特殊字符来表示输入的结束。这通常是一个无法在字符串中出现的字符,例如空格或制表符等。当用户输入这个特殊字符时,程序将停止输入,而字符串数组也将被填满。

以下是一个例子:


#include<iostream>

#include<string>

using namespace std;

int main()

{

  const int MAX = 5;

  string names[MAX];

  int i;

  //使用 "#END#" 表示字符串数组的结束

  for(i=0; i<MAX; i++)

  {

    cout<<"请输入第"<<i+1<<"个字符串:";

    cin>>names[i];

    if(names[i]=="#END#")

      break; //如果用户输入 #END#,则退出输入循环

  }

  cout<<"输入的字符串数组为:"<<endl;

  for(i=0; i<MAX; i++)

  {

    cout<<names[i]<<endl;

  }

  return 0;

}

在上面的例子中,我们使用了 "#END#" 来表示输入的结束。当用户输入 "#END#" 时,程序将退出输入循环。在输出字符串数组时,我们可以看到输入的前几个字符串被正确地存储,而剩余的位置被填充了空字符串。

2. 使用计数器

另一种方法是使用一个计数器来跟踪输入的字符串数量,并在达到字符串数组的最大容量时停止输入。这种方法需要我们在输入循环中检查计数器的值,并且在达到最大容量时退出输入循环。

以下是一个例子:


#include<iostream>

#include<string>

using namespace std;

int main()

{

  const int MAX = 5;

  string names[MAX];

  int count = 0;

  int i;

  //使用计数器来控制输入的数量

  while(count<MAX)

  {

    cout<<"请输入第"<<count+1<<"个字符串:";

    cin>>names[count];

    count++;

  }

  cout<<"输入的字符串数组为:"<<endl;

  for(i=0; i<MAX; i++)

  {

    cout<<names[i]<<endl;

  }

  return 0;

}

在上面的例子中,我们使用了一个计数器来控制字符串数组的输入。在每次输入一个字符串后,我们将计数器加一,直到达到最大容量为止。在输出字符串数组时,我们可以看到所有输入的字符串被正确地存储在了数组中。

总结

以上是两种常用的方法来结束字符串数组的输入。无论使用哪种方法,我们都需要保证程序能正确地处理输入,并且不会发生数组越界等错误。在实际使用中,我们可以根据具体情况选择适合的输入方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复