1.用C语言写的影视源码计算器源代码
2.C语言简单走迷宫●源码
3.ch341aç¼ç¨å¨è½¯ä»¶ç¨ä»ä¹è¯è¨åç
4.Linux驱动编程——ch340x驱动移植
用C语言写的计算器源代码
#include<stdio.h>
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
typedef float DataType;
typedef struct
{
DataType *data;
int max;
int top;
}Stack;
void SetStack(Stack *S,int n)
{
S->data=(DataType*)malloc(n*sizeof(DataType));
if(S->data==NULL)
{
printf("overflow");
exit(1);
}
S->max=n;
S->top=-1;
}
void FreeStack(Stack *S)
{
free(S->data);
}
int StackEmpty(Stack *S)
{
if(S->top==-1)
return(1);
return(0);
}
DataType Peek(Stack *S)
{
if(S->top==S->max-1)
{
printf("Stack is empty!\n");
exit(1);
}
return(S->data[S->top]);
}
void Push(Stack *S,DataType item)
{
if(S->top==S->max-1)
{
printf("Stack is full!\n");
exit(1);
}
S->top++;
S->data[S->top]=item;
}
DataType Pop(Stack *S)
{
if(S->top==-1)
{
printf("Pop an empty stack!\n");
exit(1);
}
S->top--;
return(S->data[S->top+1]);
}
typedef struct
{
char op;
int inputprecedence;
int stackprecedence;
}DataType1;
typedef struct
{
DataType1 *data;
int max;
int top;
}Stack1;
void SetStack1(Stack1 *S,int n)
{
S->data=(DataType1*)malloc(n*sizeof(DataType1));
if(S->data==NULL)
{
printf("overflow");
exit(1);
}
S->max=n;
S->top=-1;
}
void FreeStack1(Stack1 *S)
{
free(S->data);
}
int StackEmpty1(Stack1 *S)
{
if(S->top==-1)
return(1);
return(0);
}
DataType1 Peek1(Stack1 *S)
{
if(S->top==S->max-1)
{
printf("Stack1 is empty!\n");
exit(1);
}
return(S->data[S->top]);
}
void Push1(Stack1 *S,DataType1 item)
{
if(S->top==S->max-1)
{
printf("Stack is full!\n");
exit(1);
}
S->top++;
S->data[S->top]=item;
}
DataType1 Pop1(Stack1 *S)
{
if(S->top==-1)
{
printf("Pop an empty stack!\n");
exit(1);
}
S->top--;
return(S->data[S->top+1]);
}
DataType1 MathOptr(char ch)
{
DataType1 optr;
optr.op=ch;
switch(optr.op)
{
case'+':
case'-':
optr.inputprecedence=1;
optr.stackprecedence=1;
break;
case'*':
case'/':
optr.inputprecedence=2;
optr.stackprecedence=2;
break;
case'(':
optr.inputprecedence=3;
optr.stackprecedence=-1;
break;
case')':
optr.inputprecedence=0;
optr.stackprecedence=0;
break;
}
return(optr);
}
void Evaluate(Stack *OpndStack,DataType1 optr)
{
DataType opnd1,opnd2;
opnd1=Pop(OpndStack);
opnd2=Pop(OpndStack);
switch(optr.op)
{
case'+':
Push(OpndStack,opnd2+opnd1);
break;
case'-':
Push(OpndStack,opnd2-opnd1);
break;
case'*':
Push(OpndStack,opnd2*opnd1);
break;
case'/':
Push(OpndStack,opnd2/opnd1);
break;
}
}
int isoptr(char ch)
{
if(ch=='+'||ch=='-'||ch=='*'||ch=='/'||ch=='(')
return(1);
return(0);
}
void Infix(char *str)
{
int i,k,n=strlen(str);
char ch,numstr[];
DataType opnd;
DataType1 optr;
Stack OpndStack;
Stack1 OptrStack;
SetStack(&OpndStack,n);
SetStack1(&OptrStack,n);
k=0;
ch=str[k];
while(ch!='=')
if(isdigit(ch)||ch=='.')
{
for(i=0;isdigit(ch)||ch=='.';i++)
{
numstr[i]=ch;
k++;
ch=str[k];
}
numstr[i]='\0';
opnd= atof(numstr);
Push(&OpndStack,opnd);
}
else
if(isoptr(ch))
{
optr=MathOptr(ch);
while(Peek1(&OptrStack).stackprecedence>=optr.inputprecedence)
Evaluate(&OpndStack,Pop1(&OptrStack));
Push1(&OptrStack,optr);
k++;
ch=str[k];
}
else if(ch==')')
{
optr=MathOptr(ch);
while(Peek1(&OptrStack).stackprecedence>=optr.inputprecedence)
Evaluate(&OpndStack,Pop1(&OptrStack));
Pop1(&OptrStack);
k++;
ch=str[k];
}
while(!StackEmpty1(&OptrStack))
Evaluate(&OpndStack,Pop1(&OptrStack));
opnd=Pop(&OpndStack);
cout<<"你输入表达式的计算结果为"<<endl;
printf("%-6.2f\n",opnd);
FreeStack(&OpndStack);
FreeStack1(&OptrStack);
}
void main()
{
cout<<"请输入你要计算的表达式,并以“=”号结束。"<<endl;
char str[];
gets(str);
Infix(str);
=================================================================
哈哈!影视源码给分吧!影视源码
C语言简单走迷宫●源码
//VC6.0、影视源码VS编译OK
//C语言走迷宫
#include
#include
int DrawMap(char map[][]);
int AmendMpa(char map[][],影视源码快慢公式源码char ch);
int main(void)
{
char ch;
int retval;//结果
char map[][]={ "##############################",\
"#0 ## #######",\
"## ##### ########## #######",\
"### ###### #### ### ###",\
"#### ##### # #### #######",\
"####### ## ### ### #",\
"####### ## ## #### ## ##### #",\
"#### ## ## ##### ## #### #",\
"####### # # ### ### #",\
"####### # ### ## #### ######",\
"# # ## ## ## ## #######",\
"##### # # # ## #### #####",\
"####### # ####### ####",\
"################ ###### # #",\
"################## ##",\
"########################### ##",\
};//地图数组
DrawMap(map);
while(1)
{
ch=getch();
if(ch=='j' || ch=='J' || ch=='k' || ch=='K' || ch=='L' || ch=='l' ||ch=='i' || ch=='I')
{
retval=AmendMap(map,ch);//获取输入修改地图
DrawMap(map);//刷新显示
if(retval==1)//走出迷宫
{
printf(" 恭喜你走出迷宫! ");
break;
}
}
}
printf("按任意键结束!影视源码做小程序的源码 ");
getch();
return 0;
}
int DrawMap(char map[][])
{
int i,影视源码j;
system("cls");
printf("C语言走迷宫 ");
printf("开始前请关闭输入法!!影视源码!影视源码 ");
printf("jkli建移动 ");
for(i=0;i<;i++)
{
for(j=0;j<;j++)
{
printf("%c",影视源码map[i][j]);
}
printf(" ");
}
printf(" 出口");
return 0;
}
int AmendMap(char map[][],char ch)//返回1走出迷宫,否则返回0
{
int i,影视源码j;
int wx,wy;//wx:x位置,xy:y位置
for (i=0;i<;i++)
{
for (j=0;j<;j++)
{
if(map[i][j]=='0')
{
wy=i;
wx=j;
}
}
}
if(ch=='j' || ch=='J')//向右
{
if(map[wy][wx-1]=='#')
{
return 0;
}
else
{
map[wy][wx - 1]='0';
map[wy][wx]=' ';
}
}
if(ch=='l' || ch=='L')//向左
{
if(map[wy][wx + 1]=='#')
{
return 0;
}
else
{
map[wy][wx + 1]='0';
map[wy][wx]=' ';
}
}
if(ch=='i' || ch=='I')//向上
{
if(map[wy - 1][wx]=='#')
{
return 0;
}
else
{
map[wy - 1][wx ]='0';
map[wy][wx]=' ';
}
}
if(ch=='k' || ch=='K')//向下
{
if(map[wy + 1][wx]=='#')
{
return 0;
}
else
{
map[wy + 1][wx]='0';
map[wy][wx]=' ';
}
}
if (map[][]=='0')//判断走到出口
{
return 1;
}
}
chaç¼ç¨å¨è½¯ä»¶ç¨ä»ä¹è¯è¨åç
Cï¼Cå å ï¼PythonãCHAç¼ç¨æºä»£ç æ¯ä¸ç§ç¨äºç¼ç¨CHAè¯ççæºä»£ç ãCï¼Cå å ï¼Pythonè¯è¨æ¯å¹¿æ³ä½¿ç¨çç¼ç¨è¯è¨ï¼å ·æç®æ´ï¼é«æï¼å¯ç§»æ¤çç¹ç¹ï¼é常éåç¨äºç¼åCHAç¼ç¨æºä»£ç ã
Linux驱动编程——chx驱动移植
chx驱动移植主要概念
移植指的影视源码是将厂商提供的驱动源码调整适配到特定的系统版本。Linux系统通常会提供这些驱动的影视源码军棋游戏源码JAVA源代码。
ch简介
这是影视源码一种用于USB转串口的芯片,需要编写驱动程序。影视源码
实验目的
在Linux平台上熟悉驱动移植、编译和加载的凯元tool 源码方法,实现官方chx驱动的USB转串口功能。
硬件电路
开发板和一个CH模块。
驱动源码下载
从blog.csdn.net/JAZZSOLDI...下载Linux驱动CHSER_LINUX.ZIP,包含chx.c(驱动源码)、python源码编写教程Makefile(编译文件)和readme.txt(版本和命令说明)。
代码修改
主要修改chx.c的两处代码,注释某些代码,同时自定义Makefile。
编译运行
使用make命令编译,生成chx.ko的目标文件。使用make install将目标文件拷贝到NFS目录。插入CH模块后,使用insmod命令加载chx驱动。
实验现象
加载驱动后,系统立即识别出新的串口,证明移植成功。
总结
完成驱动的移植后,验证了USB转串口功能的实现,验证了驱动在特定系统环境下的兼容性与可用性。
2024-12-23 07:112011人浏览
2024-12-23 06:191212人浏览
2024-12-23 05:481011人浏览
2024-12-23 05:47240人浏览
2024-12-23 05:302068人浏览
2024-12-23 04:49111人浏览
今18)天下午4點多,一名大學生與同學打完球準備返家,沒想到騎車行經新北市鶯歌區大湖路時,疑似恍神,轉彎時失控自撞橋頭,整個人墜入約6米深溪底,造成身體多處受傷,警消獲報到場救援,將他拉上橋,所幸沒有
联合国秘书长古特雷斯:巴以冲突该停止了2024-10-07 10:20:00评论:字体大小 T T T在10月7日本轮巴以大规模冲突爆发一周年之际,古特雷斯表示:一年时间已经过去,这场冲突应该停止了,
22:00更新)今26)天晚間7點多,淡水水碓二路一棟大樓發生火警,警消到場後,在火場裡面發現2位民眾,為母子身分,但兩人都已經沒有呼吸心跳,被緊急送往淡水馬偕醫院急救後,還是在晚間9點半左右宣告不治