char数组写入文件

标签 c arrays string

我有一个名为 Product 的结构,其中有一个名为 prodname 的变量:

char prodname[30];

该结构的实例称为产品

我编写了一个方法来检查用户输入的名称是否唯一。在此方法中,我将用户输入的值传递给名为 checkprodname(char n[30]) 的方法

在主方法中

if(checkprodname(prodName) == 0)
    {
        gotoxy(21,13);
        printf("The Product Name that you have entered already exists.");
        getch();
        addproduct();
        return 0;
    }

然后我有这行代码:

product.prodname = prodName;

为了将临时变量 prodName 中的值分配到实际的结构中。当然,我会让他们继续将所有这些保存到文件中。但到目前为止我收到了一个错误,因为这是我收到的错误:

incompatible types when assigning to type char[30] from type char**

我已经对 prodid 使用了相同的逻辑,该逻辑有效;但是,当使用字符串时,我不知道如何将值实际分配到实际结构中,因为我收到了该错误。

如有任何帮助,我们将不胜感激。

最佳答案

如果您使用 C++,请考虑用 std::string 替换 char 数组。并不是说它有那么大的区别,但 std::strings 通常更容易使用。 (恕我直言)

关于char数组写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14238703/

相关文章:

java - IF 语句检查(无法正常工作)

c++ - 从 C++ 类自动将属性成员生成为字符串?

c - 动态分配数字给C中的数组

java - 将 int 数组转换为 char 数组

c - 是什么导致段错误?

java - 未找到 int 数组中的元素(虽然应该找到)

c++ - 高效的自定义字符串创建器

java - 找到正确的异常来捕获

在 C 中释放内存时无法理解此错误

java - 在 Android JNI/NDK 代码中从 C++ 函数调用 C 函数