亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? codrle1.c

?? 著名壓縮算法的實(shí)現(xiàn)
?? C
字號:
/* Fichier: codrle1.c   Auteur: David Bourgin   Date de creation: 28/1/94   Date de derniere mise a jour: 22/5/94   Dessein: Exemple de codage RLE type 1 avec comme donnees a compresser le contenu d'un fichier.*/#include <stdio.h>/* Pour les routines printf,fgetc,fputc et fwrite */#include <stdlib.h>/* Pour la routine exit *//* Codes d'erreur renvoyes a l'appelant */#define NO_ERROR      0#define BAD_FILE_NAME 1#define BAD_ARGUMENT  2/* Constantes pratiques */#define FALSE 0#define TRUE  1/* Variables globales */FILE *f_source,*f_dest;                             /* Puisque fgetc=EOF uniquement apres un acces                                alors statut_octet_stocke vaut TRUE si un octet a ete engrange par fgetc                                ou FALSE s'il n'y aucun octet valide, deja lu et non traite dans val_octet_stocke */int statut_octet_stocke=FALSE;int val_octet_stocke;/* Pseudo procedures */#define fin_des_donnees() (statut_octet_stocke?FALSE:!(statut_octet_stocke=((val_octet_stocke=fgetc(f_source))!=EOF)))#define lire_octet()  (statut_octet_stocke?statut_octet_stocke=FALSE,(unsigned char)val_octet_stocke:(unsigned char)fgetc(f_source))#define ecrire_octet(octet)  ((void)fputc((octet),f_dest))#define ecrire_tableau(tableau,nb_octets_a_ecrire)  ((void)fwrite((tableau),1,(nb_octets_a_ecrire),f_dest))void codagerle1()/* Parametres en sortie: Aucun   Action: Compresse suivant la methode RLE type 1 tous les octets lus par la fonction lire_octet   Erreurs: Une erreur d'entree/sortie peut perturber le deroulement de l'algorithme*/{ register unsigned char octet1,octet2,taille_trame,                         tableau[129];  if (!fin_des_donnees())     { octet1=lire_octet();  /* Y a-t-il au moins 1 octet a analyser? */       taille_trame=1;       if (!fin_des_donnees())                             /* Y a-t-il au moins 2 octets a analyser? */          { octet2=lire_octet();            taille_trame=2;            do { if (octet1==octet2)                             /* Y a-t-il repetition? */                    { while ((!fin_des_donnees())&&(octet1==octet2)&&(taille_trame<129))                            { octet2=lire_octet();                              taille_trame++;                            }                      if (octet1==octet2)                             /* N'a-t-on rencontre qu'une sequence d'octets identiques? */                        { ecrire_octet(126+taille_trame);                          ecrire_octet(octet1);                          if (!fin_des_donnees())                             { octet1=lire_octet();                               taille_trame=1;                             }                          else taille_trame=0;                        }                      else   /* Non, alors ne pas prendre en compte le dernier octet */                           { ecrire_octet(125+taille_trame);                             ecrire_octet(octet1);                             octet1=octet2;                             taille_trame=1;                           }                      if (!fin_des_donnees())                         { octet2=lire_octet();                           taille_trame=2;                         }                    }                 else        /* Preparer le tableau de comparaisons                                ou seront stockes tous les octets non identiques */                      { *tableau=octet1;                        tableau[1]=octet2;                        while ((!fin_des_donnees())&&(tableau[taille_trame-2]!=tableau[taille_trame-1])&&(taille_trame<128))                              { tableau[taille_trame]=lire_octet();                                taille_trame++;                              }                        if (tableau[taille_trame-2]==tableau[taille_trame-1])                             /* A-t-on rencontre une sequence d'octets tous differents suivie d'octets identiques? */                           { /* Oui, alors decompter les deux derniers octets */                             ecrire_octet(taille_trame-3);                             ecrire_tableau(tableau,taille_trame-2);                             octet1=tableau[taille_trame-2];                             octet2=octet1;                             taille_trame=2;                           }                        else { ecrire_octet(taille_trame-1);                               ecrire_tableau(tableau,taille_trame);                               if (fin_des_donnees())                                  taille_trame=0;                               else { octet1=lire_octet();                                      if (fin_des_donnees())                                         taille_trame=1;                                      else { octet2=lire_octet();                                             taille_trame=2;                                           }                                    }                             }                      }               }            while ((!fin_des_donnees())||(taille_trame>=2));          }       if (taille_trame==1)          { ecrire_octet(0);            ecrire_octet(octet1);          }     }}void aide()/* Parametres en sortie: Aucun   Action: Affiche l'aide du programme et termine son execution   Erreurs: Aucune*/{ printf("Cet utilitaire permet de compresser un fichier par la methode RLE type 1\n");  printf("telle qu'elle est exposee dans 'La Video et Les Imprimantes sur PC'\n");  printf("\nUsage: codrle1 source destination\n");  printf("source: Nom du fichier a compresser\n");  printf("destination: Nom du fichier compresse\n");}int main(argc,argv)/* Parametres en sortie: Renvoie un code d'erreur (0=Aucune)   Action: Procedure principale   Erreurs: Detectee, traitee et un code d'erreur est renvoye si necessaire*/int argc;char *argv[];{ if (argc!=3)     { aide();       exit(BAD_ARGUMENT);     }  else if ((f_source=fopen(argv[1],"rb"))==NULL)          { aide();            exit(BAD_FILE_NAME);          }       else if ((f_dest=fopen(argv[2],"wb"))==NULL)               { aide();                 exit(BAD_FILE_NAME);               }            else { codagerle1();                   fclose(f_source);                   fclose(f_dest);                 }  printf("Execution de codrle1 achevee.\n");  return (NO_ERROR);}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产视频直播| 亚洲国产精品一区二区www | 蜜臀久久99精品久久久画质超高清| 欧美在线观看一区| 亚洲一区日韩精品中文字幕| 欧美亚洲综合色| 亚洲一区二区三区美女| 精品1区2区3区| 日韩黄色小视频| 91精品欧美福利在线观看| 免费在线观看精品| 26uuu国产日韩综合| 韩国在线一区二区| 久久久国际精品| 国产精品白丝jk白祙喷水网站 | 中文字幕欧美区| 成人永久免费视频| 日韩久久一区二区| 欧美综合亚洲图片综合区| 亚洲成人av中文| 欧美一区二区黄色| 国产精品一区二区在线观看不卡| 国产欧美日韩激情| 97超碰欧美中文字幕| 亚洲伊人色欲综合网| 欧美另类z0zxhd电影| 久久99精品久久只有精品| 2023国产精品自拍| 成人av第一页| 亚洲素人一区二区| 欧美精品欧美精品系列| 精品一二三四区| 国产精品久久久久久户外露出| 91美女在线观看| 亚洲成人精品影院| 欧美大肚乱孕交hd孕妇| 欧美日韩在线一区二区| 午夜欧美大尺度福利影院在线看| 日韩一二三四区| 国产精品88888| 亚洲精品一二三区| 日韩一区二区电影| 国产成人精品亚洲日本在线桃色 | 中文字幕一区免费在线观看| 色网综合在线观看| 蜜桃av一区二区三区| 国产精品入口麻豆九色| 欧美性大战久久| 精品一区二区三区视频| 综合激情网...| 91精品国产综合久久久久久久| 国产一区二区在线看| 亚洲人亚洲人成电影网站色| 欧美一区二区三区四区五区| 国产成人啪免费观看软件| 亚洲香肠在线观看| 久久精品一区二区三区av| 在线观看亚洲成人| 国产乱子轮精品视频| 亚洲影院在线观看| 国产日韩一级二级三级| 欧美喷潮久久久xxxxx| 成人综合日日夜夜| 日本女人一区二区三区| 国产精品国产自产拍高清av| 91精品麻豆日日躁夜夜躁| 成人网男人的天堂| 蜜桃视频一区二区三区| 亚洲免费观看高清完整版在线| 日韩免费性生活视频播放| 日本丶国产丶欧美色综合| 黄页视频在线91| 亚洲成人一区在线| 国产精品第四页| 日韩免费观看高清完整版在线观看| 色综合天天做天天爱| 久久精品久久99精品久久| 一区二区三区在线播放| 国产亚洲女人久久久久毛片| 在线不卡欧美精品一区二区三区| 成人av影院在线| 久草中文综合在线| 午夜精品久久久久久久久| 国产精品国产自产拍在线| 亚洲精品一线二线三线 | 91女神在线视频| 韩国视频一区二区| 日韩专区在线视频| 亚洲黄色在线视频| 国产精品电影一区二区| 久久你懂得1024| a亚洲天堂av| 久久国产精品一区二区| 亚洲乱码精品一二三四区日韩在线| 亚洲精品一区二区精华| 欧美久久一区二区| 色综合久久久网| 欧美日韩免费一区二区三区| 国产综合一区二区| 欧美videossexotv100| 欧美va亚洲va在线观看蝴蝶网| 日韩视频一区二区三区| 日韩三级中文字幕| 精品国产乱码91久久久久久网站| 欧美电影免费观看高清完整版在线| 日韩亚洲欧美中文三级| 日韩女优电影在线观看| 精品av综合导航| 久久久精品国产99久久精品芒果| 久久久亚洲国产美女国产盗摄 | 亚洲国产高清在线观看视频| 亚洲国产激情av| 亚洲欧美在线另类| 亚洲欧美日韩中文播放| 亚洲午夜久久久| 日本午夜精品视频在线观看| 久久福利视频一区二区| 国产精品一卡二| 99在线热播精品免费| 91豆麻精品91久久久久久| 欧美人xxxx| 精品久久99ma| 国产丝袜美腿一区二区三区| 国产精品乱码久久久久久| 欧美综合在线视频| 不卡区在线中文字幕| 97se亚洲国产综合在线| 欧美性猛交xxxx黑人交| 91精品国产综合久久久久久久 | 99精品国产热久久91蜜凸| 91首页免费视频| 精品视频在线看| 欧美成人精品3d动漫h| 国产精品天干天干在线综合| 亚洲精品va在线观看| 石原莉奈在线亚洲二区| 韩国精品主播一区二区在线观看 | 国产一区二区在线免费观看| 成人91在线观看| 在线免费视频一区二区| 日韩欧美在线123| 中文一区二区完整视频在线观看| 亚洲三级免费观看| 日韩国产精品大片| 国产suv一区二区三区88区| 色综合久久六月婷婷中文字幕| 欧美日韩激情一区二区| 久久久久久久网| 一区二区三国产精华液| 久久aⅴ国产欧美74aaa| 99热这里都是精品| 91精品国产黑色紧身裤美女| 国产欧美一区二区三区沐欲 | 日韩高清一区二区| 国产白丝网站精品污在线入口| 欧美午夜电影在线播放| 久久久综合视频| 亚洲国产毛片aaaaa无费看| 久久国产精品99精品国产| 91亚洲国产成人精品一区二区三 | 成人黄色在线网站| 在线观看日韩一区| 久久九九久久九九| 亚洲五月六月丁香激情| 国产成人在线网站| 欧美精选一区二区| 国产精品高潮呻吟| 美女诱惑一区二区| 93久久精品日日躁夜夜躁欧美| 日韩精品专区在线| 亚洲男女一区二区三区| 国产在线精品一区二区夜色| 欧美性一级生活| 欧美高清一级片在线观看| 日韩激情一二三区| 99精品视频在线观看| 日韩久久免费av| 亚洲一区免费视频| 丁香婷婷综合五月| 欧美大肚乱孕交hd孕妇| 亚洲一区在线看| 北岛玲一区二区三区四区| 欧美不卡视频一区| 亚洲一区电影777| 99热国产精品| 久久综合五月天婷婷伊人| 午夜精品久久久久久久| 91色porny| 欧美国产视频在线| 精品影视av免费| 91精品一区二区三区久久久久久| 亚洲三级视频在线观看| 高清在线不卡av| 欧美成人性福生活免费看| 五月天网站亚洲| 91久久精品国产91性色tv| 国产精品国产三级国产| 国产精品白丝jk黑袜喷水| 欧美成人video| 日本成人在线一区|