c++ - 在这种情况下如何从结构中输入字符串数组?

标签 c++ arrays string input structure

所以,我是初学者。我有这段代码和一些问题。为了更好地理解,您将需要以下代码:

struct student
{
    double marks;
    char name[50];
}stud[100],t;

int main()
{
    int i,j,n;
    cout<<"Enter the number of students: ";
    cin>>n;
    cout<<"Enter student info as name , marks\n";
    for(i=0;i<n;i++)
    {
        cin>>stud[i].name;
        cin>>stud[i].marks;
    }

问题是,而不是这部分:

struct student
{
    double marks;
    char name[50];
}stud[100],t;

应该有这部分:

struct student
{
    double marks[];
    string name[];
}stud[100],t;

但是后来我不知道如何将该数据输入程序,因为那时 cin >> 不起作用。
任务说当用户输入“”(ENTER)时,程序应该完成并按顺序显示学生打印。

最佳答案

标记和名称数组是动态的,它们被称为灵活数组成员,cpp 不支持它们你可以引用这个链接Are flexible array members valid in C++?而且它们在 c 中得到支持,你最多可以有一个灵活的数组成员,它应该在末尾
https://www.geeksforgeeks.org/flexible-array-members-structure-c/

关于c++ - 在这种情况下如何从结构中输入字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61295439/

相关文章:

c++ - 在 C++ 中删除一个三重指针

javascript - 解析 JavaScript 字符串的最佳实践

python - 如何将秒转换为 HH :MM:SS format without failing if hour more than 24

javascript - 抓取 NodeJS 时出现分页问题

C# 绑定(bind)对象到字符串

c++ - 使用 strcpy 时从 'char' 到 'const char*' 的转换无效

c++ - 开罗:裁剪 PDF 表面?

复制内部包含空值的字符串

mysql - 检查数据库中的条目是否可用

c++ - 将 int 转换为 Glib::ustring w/o stringstream