所以我可以使用"tvservice -o"来关闭覆盆子Pi上的HDMI,并使用"tvservice -p"将其重新打开.重新打开之后我显然需要做"fbset -depth 8 && fbset -depth 16"来重新启用帧缓冲区,然后强制重写X11.
我的问题是,我如何在C中这样做?我有一个X11应用程序,我可以管理X11重绘没问题,但如何在C中禁用/重新启用HDMI,以及如何在重新启用HDMI后重新启用帧缓冲?
为了给出背景知识,我有一个无头应用程序作为一种媒体服务器运行,由Android应用程序控制.目前,我暂时禁用超时后关闭HDMI.然而,为了节省能量,我想在不使用应用程序时禁用HDMI,然后重新打开并使用libcec在屏幕上显示RPi应用程序,以确定电视何时使用RPi的HDMI连接打开HDMI和关闭.
我想弄清楚为什么以下代码:
{
unsigned int a = 10;
a = ~a;
printf("%d\n", a);
}
Run Code Online (Sandbox Code Playgroud)
a将00001010开始,并且在NOT opertaion之后,将变换
进入11110101.
当一个人试图打印a为有符号整数时,会发生什么
打印结果是-11?
我以为我最终会看到-5可能(根据二进制表示),但不是-11.
我很乐意对此事作出澄清.
我是编程的新手,所以请原谅我的无知。我在这个网站上没有得到正确的答案。这可能是我的搜索能力。在 C 中,我编写了一个运行良好的代码。但是我想按照用户希望的方式运行代码。这意味着,假设在执行三角形区域问题后,用户可以一次又一次地运行程序。这里需要做什么?这是代码:
#include <stdio.h>
#include <conio.h>
main()
{
char a;
int base, hight, radius, length, width;
float area, pi=3.14;
printf("\n\tEnter T to execute the area of Triangle"
"\n\tEnter R to execute the area of Rectangle"
"\n\tEnter C to execute the area of Circle\n\t\n\t\n\t\n\t\n\t");
a=getche();
printf("\n\t\n\t\n\t\n\t");
if(a=='T' || a=='t'){
printf("You want to know the Area of a Triangle."
"\n\tEnter your triangles Base: ");
scanf("%d", &base);
printf("\n\tEnter your triangles Hight: ");
scanf("%d", &hight);
printf("\n\tThe base is %d and the hight is …Run Code Online (Sandbox Code Playgroud) 我对Ada很陌生,而且我很难弄清楚如何使用这些结构.当他们被转换成Ada时,下面的C结构会是什么样子?
这些是我的结构:
struct dataT
{
int m;
};
struct stack
{
int top;
struct dataT items[STACKSIZE];
} st;
Run Code Online (Sandbox Code Playgroud)
如何在Ada中表达这种说法?
st.items[st.top].m
Run Code Online (Sandbox Code Playgroud)