重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
我做過用電腦傳數據到U盤和單片機的程序,用的是C語言的fopen()和fwrite()函數。你可以試一下這兩個函數,基本的寫法如下:
成都創新互聯公司是專業的霞山網站建設公司,霞山接單;提供成都網站制作、網站設計,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行霞山網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
# include"STDIO.H"
# include"PROCESS.H"
# include"DATA.H"
#define DATA_SIZE 240*320
void main()
{
FILE *fp;
unsigned long i;
char Dat;
fp=fopen("COM6","wb");
if(fp==NULL)
{
printf("打開串口失敗!\n");
exit(1);
}
else
{
printf("串口打開成功!\n");
printf("開始傳輸數據!\n");
for(i=0;iDATA_SIZE; i++)
{
Dat=Dat_Buf[i];
fwrite(Dat,sizeof(char),1,fp);
}
printf("數據傳輸結束!\n");
fclose(fp);
}
}
程序就類似于這種,你的打印機有什么特別的要求,你還要自己琢磨一下。
#include stdio.h
int main(void)
{
char n;
printf("請輸入要打印的字符 : ");
scanf("%c",n);
for( ; ; ){
printf("%c\n\v",n);
}
return 0 ;
}
#include?stdio.h
struct?Sudent
{
char?num[6];?//改類型
char?name[8];
char?score[4];
}stu[5];
//?print?定義可以放前面
void?print(?struct?Sudent?stu[],int?count)??//加上函數類型,參數類型聲明
//?struct?student?stu[6];//這句不要
{
int?i,j;?//增加
for(i?=?0;i?count;i++)?//增加
{
printf("%s%s",stu[i].num,stu[i].name/*,stu[i].score*/);//
for(j=0;j3;j++)
printf("%d",stu[i].score[j]);
printf("\n");
}
}
//
void?main()
{
int?i,j;
//char?stu[5];?//已經聲明stu為全局結構體數組了,這句不要
//?char?print(char?stu);?//?
for(i=0;i5;i++)
{
scanf("%s",stu[i].num);
scanf("%s",stu[i].name);
for(j=0;j3;j++)
scanf("%d",stu[i].score[j]);
}
print(stu,5);
}
二維數組無法作為參數直接傳遞給函數,但是可以利用二維數組內部數據的連續性,將二維數組的地址按照一維數組的方式傳遞給函數,并傳入對應的行列數,從而實現函數內打印二維數組的效果。
以整型為例,具體方式如下:
void?print_array(int?*a,?int?m,?int?n)//a為一個m行,n列的二維數組的首地址。
{
int?i,?j;
for(i?=?0;?i??m;?i?++)
{
for(j?=?0;?j??n;?j?++)
{
printf("%d,",?a[i*n+j]);//a[i*n+j]也就是原始二維數組第i行第j列的元素。
}
printf("\n");//每行結束輸出換行。
}
}