C 有没有办法在for循环中创建唯一的结构?
我在Stack和Google上做了一些搜索,没有发现任何特别有用的东西,所以我想我应该写一篇新的帖子 假设我有以下结构:C 有没有办法在for循环中创建唯一的结构?,c,C,我在Stack和Google上做了一些搜索,没有发现任何特别有用的东西,所以我想我应该写一篇新的帖子 假设我有以下结构: typedef struct ItemToPurchase_Struct{ char itemName[ITEM_NAME_MAX_SIZE]; int itemPrice; int itemQuantity; }ItemToPurchase; 有没有一种方法可以创建一个for循环来创建给定结构的新的唯一实例(如果这是正确的术语的话..我
typedef struct ItemToPurchase_Struct{
char itemName[ITEM_NAME_MAX_SIZE];
int itemPrice;
int itemQuantity;
}ItemToPurchase;
有没有一种方法可以创建一个for循环来创建给定结构的新的唯一实例(如果这是正确的术语的话..我对C和structs是新手),而不是手动创建每个实例
谢谢大家,希望你们一切顺利。例如
ItemToPurchase * array[10];
for (int i=0; i<10; i++) {
ItemToPurchase * item = malloc(sizeof(ItemToPurchase));
array[i] = item;
}
itemtopourchase*数组[10];
对于(int i=0;i是否需要(零初始化)数组:ItemToPurchase arr[10]={0};
?然后,要设置可以执行的第一个元素:strcpy(arr[0]。itemName,“first”);arr[0]。itemPrice=42;arr[0]。itemQuantity=-1;
或设置最后一个元素:strcpy(arr[9]。itemName,“last”);…
@pmg我不是问如何设置struct元素的值。我是问是否有办法在for-loop中创建相同类型的新的、唯一的结构。您需要使用malloc()
动态分配它们。我听说过malloc,但从未使用过。我会研究一下。谢谢您的帮助@dspr
for (int i=0; i<10; i++) free(array[i]);