结构打印垃圾中的字符数组

标签 c string struct initialization

当我运行它时,partName 字符数组打印垃圾字符。知道为什么吗?谢谢!

typedef struct {
char partName[30]; 
int partNumber; 
float price; 
int stock; 
int reorder;
} inventory;
struct address{
char streetAddress[25]; 
char city[20];
char state[3]; 
char zipCode[6];
};
void GetData(){

inventory order;
address orderAddress;
printf("Enter the part number (Database Includes orders 0001 - 0005):  ");

scanf("%d", &order.partNumber);

if(order.partNumber == 0001){
order.partName == "Pokeball";
order.price == 200;
order.stock == 8263;
order.reorder == 888273;

orderAddress.streetAddress == "21 Oak St.";
orderAddress.city == "Kanto Town";
orderAddress.state == "IA";
orderAddress.zipCode == "28832";

printf("Part was: %s ", order.partName);
//printf("Order was sent to: \n %s\n %s\n %s\n %s\n", orderAddress.streetAddress,         orderAddress.city, orderAddress.state, orderAddress.zipCode);
 }

它正在打印一些随机字符,我确定这是某个地方的简单错误。

谢谢大家!

最佳答案

以下不是作业。它们是比较:

order.partName == "Pokeball";
order.price == 200;
order.stock == 8263;
order.reorder == 888273;

orderAddress.streetAddress == "21 Oak St.";
orderAddress.city == "Kanto Town";
orderAddress.state == "IA";
orderAddress.zipCode == "28832";

要分配给整数,写

order.price = 200;

要分配给 C 字符串,请使用 strcpy()

关于结构打印垃圾中的字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15963974/

相关文章:

python - 在 Python 中切换两个字符串的首字母?

C++ 模板 : When to include template parameters in templatized struct?

c - 如何声明受限函数指针参数

c - 如何在 C 中将多个列表(hlist)作为函数参数传递

c - 如何在C语言中使用scanf输入未知数量的数字?

c - 0xff的补码怎么不是0x00呢?

C:创建文件和备份文件

javascript - 从传递给函数的字符串调用 javascript 函数

c - C 中烦人的结构错误

c - 警告 : return makes pointer from integer without a cast using malloc sizeof struct in C