#include <stdio.h> #include <stdint.h> typedef union { struct{ uint16_t EN : 1; uint16_t MODE : 1; uint16_t PRI : 2; uint16_t RES : 12; // reserved }bits; unsigned short reg; } ConfigRegister; int validate_config(ConfigRegister *cfg) { // Write logic using pointer access if(( cfg->bits.EN==1)& (cfg->bits.PRI !=3)&(cfg->bits.RES==0)) return 1; else return 0; } int main() { ConfigRegister cfg; scanf("%hx", &cfg.reg); int result = validate_config(&cfg); printf("%d", result); return 0; }
Test Cases
Test Results
Input
0005
Expected Output
1