做法是:
把命令字符对应的ASC||值依次向串口发送
如at+cmgf=1<CR>这个命令,就应向串口依次发送“at+cmgf=1”这个字符串中每个字符对档歼颂应的ASC||值的16进制数,<CR>是回车键,对应ASC||值是13,十六进制是0D
如不明白
这道题考的应该不是数组和位 *** 作,应该是结构体的位域和联合,上面的仁兄写的结果虽然对,但是显然不符合提示中的内容。
#include<stdio.h>struct phone_switchers {
int power:1
int wifi:1
int screen:1
int sensor:1
仿汪宽 int gprs:1
int phone:1
int unused:2
}
union state {
陵雹 int value
struct phone_switchers switchers
}
int main() {
union state mystate = {0}
scanf("0x%x", &mystate.value)
if (mystate.switchers.power) puts("电源开")
if (mystate.switchers.wifi) puts("WIFI开")
if (mystate.switchers.screen) puts("屏幕开")
if (mystate.switchers.sensor) puts("传感器开")
if (mystate.switchers.gprs) puts("GPRS开"备亮)
if (mystate.switchers.phone) puts("电话开")
return 0
}
而且楼上的大哥输入的时候0x3f这样的输入是接收不了的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)