[英]how do I assign a value to a struct array inside a struct in c?
所以,我需要扫描的值赋给变量palo
和valor
属于cartas
这是一个结构,而这一次是另一种结构里面?
这是我到目前为止所得到的,我收到一个错误“必须有指向对象类型的指针”:
#include <stdio.h>
#define DIM 100
typedef struct{
char palo;
int valor;
}t_carta;
typedef struct{
int ncartas;
t_carta cartas[DIM];
}t_baraja;
int main(){
t_baraja b1;
t_carta carta[DIM][DIM];
printf("Cuantas cartas tiene su baraja? ");
scanf("%d", &b1.ncartas);
printf("Introduzca las cartas separadas por guiones (o4-e10-b1...):\n");
for(int i=0; i<b1.ncartas; i++){
scanf("%c%d%*c", &b1.cartas->palo, &b1.cartas->valor);
b1.cartas[i][i]=b1.cartas->valor;
}
return 0;
}```
所提供的代码没有任何意义,但回答您的问题
c - 如何为c中结构内的结构数组赋值?
我将解释你如何做到这一点。
如果你有一个对象声明如下
t_baraja b1;
然后设置其数据成员数组的数据成员
t_carta cartas[DIM];
你可以通过以下方式
b1.cartas[i].palo; = some_value;
b1.cartas[i]valor = another_value;.
其中i
是在数据成员数组cartas
中选择元素的索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.