c语言写md5怎么那么难

1.求用c语言实现md5算法的编程思路

主要就是调用库函数 MD5加密说到底也是函数计算 没有什么思路的问题,了解md5的发明算法,这应该是一个数学问题 我这里有代码,你可以参考一下 #include #include #include #include typedef unsigned char *POINTER; typedef unsigned short int UINT2; typedef unsigned long int UINT4; typedef struct { UINT4 state[4]; UINT4 count[2]; unsigned char buffer[64]; } MD5_CTX; void MD5Init(MD5_CTX *); void MD5Update(MD5_CTX *, unsigned char *, unsigned int); void MD5Final(unsigned char [16], MD5_CTX *); #define S11 7 #define S12 12 #define S13 17 #define S14 22 #define S21 5 #define S22 9 #define S23 14 #define S24 20 #define S31 4 #define S32 11 #define S33 16 #define S34 23 #define S41 6 #define S42 10 #define S43 15 #define S44 21 static unsigned char PADDING[64] = { 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; #define F(x, y, z) (((x) & (y)) | ((~x) & (z))) #define G(x, y, z) (((x) & (z)) | ((y) & (~z))) #define H(x, y, z) ((x) ^ (y) ^ (z)) #define I(x, y, z) ((y) ^ ((x) | (~z))) #define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) #define FF(a, b, c, d, x, s, ac) { (a) += F ((b), (c), (d)) + (x) + (UINT4)(ac); (a) = ROTATE_LEFT ((a), (s)); (a) += (b); } #define GG(a, b, c, d, x, s, ac) { (a) += G ((b), (c), (d)) + (x) + (UINT4)(ac); (a) = ROTATE_LEFT ((a), (s)); (a) += (b); } #define HH(a, b, c, d, x, s, ac) { (a) += H ((b), (c), (d)) + (x) + (UINT4)(ac); (a) = ROTATE_LEFT ((a), (s)); (a) += (b); } #define II(a, b, c, d, x, s, ac) { (a) += I ((b), (c), (d)) + (x) + (UINT4)(ac); (a) = ROTATE_LEFT ((a), (s)); (a) += (b); } inline void Encode(unsigned char *output, UINT4 *input, unsigned int len) { unsigned int i, j; for (i = 0, j = 0; j < len; i++, j += 4) { output[j] = (unsigned char)(input[i] & 0xff); output[j+1] = (unsigned char)((input[i] >> 8) & 0xff); output[j+2] = (unsigned char)((input[i] >> 16) & 0xff); output[j+3] = (unsigned char)((input[i] >> 24) & 0xff); } } inline void Decode(UINT4 *output, unsigned char *input, unsigned int len) { unsigned int i, j; for (i = 0, j = 0; j < len; i++, j += 4) output[i] = ((UINT4)input[j]) | (((UINT4)input[j+1]) << 8) | (((UINT4)input[j+2]) << 16) | (((UINT4)input[j+3]) << 24); } inline void MD5Transform (UINT4 state[4], unsigned char block[64]) { UINT4 a = state[0], b = state[1], c = state[2], d = state[3], x[16]; Decode (x, block, 64); FF (a, b, c, d, x[ 0], S11, 0xd76aa478); /* 1 */ FF (d, a, b, c, x[ 1], S12, 0xe8c7b756); /* 2 */ FF (c, d, a, b, x[ 2], S13, 0x242070db); /* 3 */ FF (b, c, d, a, x[ 3], S14, 0xc1bdceee); /* 4 */ FF (a, b, c, d, x[ 4], S11, 0xf57c0faf); /* 5 */ FF (d, a, b, c, x[ 5], S12, 0x4787c62a); /* 6 */ FF (c, d, a, b, x[ 6], S13, 0xa8304613); /* 7 */ FF (b, c, d, a, x[ 7], S14, 0xfd469501); /* 8 */ FF (a, b, c, d, x[ 8], S11, 0x698098d8); /* 9 */ FF (d, a, b, c, x[ 9], S12, 0x8b44f7af); /* 10 */ FF (c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */ FF (b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */ FF (a, b, c, d, x[12], S11, 0x6b901122); /* 13 */ FF (d, a, b, c, x[13], S12, 0xfd987193); /* 14 */ FF (c, d, a, b, x[14], S13, 0xa679438e); /* 15 */ FF (b, c, d, a, x[15], S14, 0x49b40821); /* 16 */ GG (a, b, c, d, x[ 1], S21, 0xf61e2562); /* 17 */ GG (d, a, b, c, x[ 6], S22, 0xc040b340); /* 18 */ GG (c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */ GG (b, c, d, a, x[ 0], S24, 0xe9b6c7aa); /* 20 */ GG (a, b, c, d, x[ 5], S21, 0xd62f105d); /* 21 */ GG (d, a, b, c, x[10], S22, 0x2441453); /* 22 */ GG (c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */ GG (b, c, d, a, x[ 4], S24, 0xe7d3fbc8); /* 24 */ GG (a, b, c, d, x[ 9], S21, 0x21e1cde6); /* 25 */ GG (d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */ GG (c, d, a, b, x[ 3], S23, 0xf4d50d87); /* 27 */ GG (b, c, d, a, x[ 8], S24, 0x455a14ed); /* 28 */ GG (a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */ GG (d, a, b, c, x[ 2], S22, 0xfcefa3f8); /* 30 */ GG (c, d, a, b, x[ 7], S23, 0x676f02d9); /* 31 */ GG (b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */ HH (a, b, c, d, x[ 5], S31, 0xfffa3942); /* 33 */ HH (d, a, b, c, x[ 8], S32, 0x8771f681); /* 34 */ HH (c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */ HH (b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */ HH (a, b, c, d, x[ 1], S31, 0xa4beea44); /* 37 */ HH (d, a, b, c, x[ 4], S32, 0x4bdecfa9); /* 38 */ HH (c, d, a, b, x[ 7], S33, 0xf6bb4b60); /* 39 */ HH (b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */ HH (a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */ HH (d, a, b, c, x[ 0], S32, 0xeaa127fa); /* 42 */ HH (c, d, a, b, x[ 3], S33, 0xd4ef3085); /* 43 */ HH (b, c, d, a, x[ 6], S34, 0x4881d05); /* 44 */ HH (a, b, c, d, x[ 9], S31, 0xd9d4d039); /* 45 */ HH (d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */ HH (c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */ HH (b, c,。

2.为什么c和c++基础库都不自带md5算法

因为MD5可以自己实现。

理解并不是很难。下面是MD5的一个C语言实现:---------------------------------------------md5.h#ifndef MD5_H#define MD5_Htypedef struct{ unsigned int count[2]; unsigned int state[4]; unsigned char buffer[64]; }MD5_CTX;#define F(x,y,z) ((x & y) | (~x & z))#define G(x,y,z) ((x & z) | (y & ~z))#define H(x,y,z) (x^y^z)#define I(x,y,z) (y ^ (x | ~z))#define ROTATE_LEFT(x,n) ((x > (32-n)))#define FF(a,b,c,d,x,s,ac) \{ \ a += F(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \}#define GG(a,b,c,d,x,s,ac) \{ \ a += G(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \}#define HH(a,b,c,d,x,s,ac) \{ \ a += H(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \}#define II(a,b,c,d,x,s,ac) \{ \ a += I(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \} void MD5Init(MD5_CTX *context);void MD5Update(MD5_CTX *context,unsigned char *input,unsigned int inputlen);void MD5Final(MD5_CTX *context,unsigned char digest[16]);void MD5Transform(unsigned int state[4],unsigned char block[64]);void MD5Encode(unsigned char *output,unsigned int *input,unsigned int len);void MD5Decode(unsigned int *output,unsigned char *input,unsigned int len);#endifmd5.cpp#include #include "md5.h"unsigned char PADDING[]={0x80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};void MD5Init(MD5_CTX *context){ context->count[0] = 0; context->count[1] = 0; context->state[0] = 0x67452301; context->state[1] = 0xEFCDAB89; context->state[2] = 0x98BADCFE; context->state[3] = 0x10325476;}void MD5Update(MD5_CTX *context,unsigned char *input,unsigned int inputlen){ unsigned int i = 0,index = 0,partlen = 0; index = (context->count[0] >> 3) & 0x3F; partlen = 64 - index; context->count[0] += inputlen count[0] count[1]++; context->count[1] += inputlen >> 29; if(inputlen >= partlen) { memcpy(&context->buffer[index],input,partlen); MD5Transform(context->state,context->buffer); for(i = partlen;i+64 state,&input[i]); index = 0; } else { i = 0; } memcpy(&context->buffer[index],&input[i],inputlen-i);}void MD5Final(MD5_CTX *context,unsigned char digest[16]){ unsigned int index = 0,padlen = 0; unsigned char bits[8]; index = (context->count[0] >> 3) & 0x3F; padlen = (index count,8); MD5Update(context,PADDING,padlen); MD5Update(context,bits,8); MD5Encode(digest,context->state,16);}void MD5Encode(unsigned char *output,unsigned int *input,unsigned int len){ unsigned int i = 0,j = 0; while(j > 8) & 0xFF; output[j+2] = (input[i] >> 16) & 0xFF; output[j+3] = (input[i] >> 24) & 0xFF; i++; j+=4; }}void MD5Decode(unsigned int *output,unsigned char *input,unsigned int len){ unsigned int i = 0,j = 0; while(j #include #include #include#include#include "md5.h"int main(){ MD5_CTX md5; MD5Init(&md5); int i; unsigned char encrypt[1000]; printf("请输入要加密的字符串:"); //scanf("%s",encrypt); char *p=(char *)encrypt; gets(p); unsigned char decrypt[16]; MD5Update(&md5,encrypt,strlen((char *)encrypt)); MD5Final(&md5,decrypt); printf("\n加密后:"); for(i=0;i 评论0 0 0。

3.请教MD5算法 用C语言实现

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#if defined(__APPLE__)

# define COMMON_DIGEST_FOR_OPENSSL

# include <CommonCrypto/CommonDigest.h>

# define SHA1 CC_SHA1

#else

# include <openssl/md5.h>

#endif

// 这是我自己写的函数,用于计算MD5

// 参数 str:要转换的字符串

// 参数 lengthL: 字符串的长度 可以用 strlen(str) 直接获取参数str的长度

// 返回值:MD5字符串

char *str2md5(const char * str, int length) {

int n;

MD5_CTX c;

unsigned char digest[16];

char *out = (char*)malloc(33);

MD5_Init(&c);

while (length > 0) {

if (length > 512) {

MD5_Update(&c, str, 512);

} else {

MD5_Update(&c, str, length);

}

length -= 512;

str += 512;

}

MD5_Final(digest, &c);

for (n = 0; n < 16; ++n) {

snprintf(&(out[n*2]), 16*2, "%02x", (unsigned int)digest[n]);

}

return out;

}

int main(int argc, char **argv) {

char *output = str2md5("hello", strlen("hello"));

printf("%s\n", output);

// 上面会输出 hello的MD5字符串:

//

free(output);

return 0;

}

4.C语言怎么这么难

入门不难的,以下是学C快速入门,本人原创。

常用C语言基础总结(60%以上代码),但是不写程序是永远入不了门的!

基础概念:数据类型--int,char运算符--加减乘除,赋值,判断表达式--数据类型 与 运算符的几种典型组合基础程序结构:顺序--普通程序选择--if/switch语句(可先熟悉if)循环--for/while/do while语句(可先熟悉for)(前面都会了之后)数组,函数,指针,结构体,位运算

推荐书籍:谭浩强《C程序设计》,凯尼格《C陷阱与缺陷》

5.MD5是如何编译的

MD5简介 MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。

Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的值有关,与字符集或编码方式无关。

MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。 MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被“篡改”。

举个例子,你将一段话写在一个叫readme.txt文件中,并对这个readme.txt产生一个MD5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算MD5时就会发现。如果再有一个第三方的认证机构,用MD5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。

MD5还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5值(或类似的其它算法)的方式保存的,用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,而系统并不“知道”用户的密码是什么。 一些黑客破获这种密码的方法是一种被称为“跑字典”的方法。

有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用MD5程序计算出这些字典项的MD5值,然后再用目标的MD5值在这个字典中检索。 即使假设密码的最大长度为8,同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是P(62,1)+P(62,2)….+P(62,8),那也已经是一个很天文的数字了,存储这个字典就需要TB级的磁盘组,而且这种方法还有一个前提,就是能获得目标账户的密码MD5值的情况下才可以。

在很多电子商务和社区应用中,管理用户的Account是一种最常用的基本功能,尽管很多Application Server提供了这些基本组件,但很多应用开发者为了管理的更大的灵活性还是喜欢采用关系数据库来管理用户,懒惰的做法是用户的密码往往使用明文或简单的变换后直接保存在数据库中,因此这些用户的密码对软件开发者或系统管理员来说可以说毫无保密可言,本文的目的是介绍MD5的Java Bean的实现,同时给出用MD5来处理用户的Account密码的例子,这种方法使得管理员和程序设计者都无法看到用户的密码,尽管他们可以初始化它们。但重要的一点是对于用户密码设置习惯的保护。

有兴趣的读者可以从这里取得MD5也就是RFC 1321的文本。

www.xmd5.org

我有时去破解一些常用的密码,有一定的成功率

7.C语言怎么那么难学

哇!!你觉得C语言难学???

那你知道什么语言好学么??

我听说是VB,我没接触过,所以不知是不是好学。。

可我学过C,感觉一般般,不算难学啊!

我在学C++,哇草,难学的要命,与C相比,觉得难学三倍

如果你真的学不下去了,我只能告诉你,你没这方面的兴趣与天赋。

改学其他吧。

我告诉你一个秘密,学这些语言的秘密:

那就是 坚持与兴趣,将他变成你的兴趣。。

这就是高手的赠言。

c语言写md5怎么那么难

转载请注明出处育才学习网 » c语言写md5怎么那么难

知识

class的音标怎么写

阅读(222)

本文主要为您介绍class的音标怎么写,内容包括class,pass的音标怎么写,英语课的音标怎么写,c丨ass的音标怎么写。student 美[stju:dənt] 英[stju:dənt] 详细释义:n.1.学生,学习者,大学生,研究者例句:1.The yo

知识

c里三次方根怎么写

阅读(205)

本文主要为您介绍c里三次方根怎么写,内容包括C++中三次方根怎么打,如何用C语言实现开三次方根,4次方根用c语言怎么写。用牛顿迭抄代公式Xn+1=Xn-f(Xn)/f(Xn)其中f(X)=X^3-afloat CubeRoot(float a){float

知识

投票通知怎么写吸引人

阅读(453)

本文主要为您介绍投票通知怎么写吸引人,内容包括怎样才能让自己发起的投票迅速地吸引更多的人,群公告怎么写吸引人,微信投票活动方案怎么写。〖群规条例〗 长期潜水者请自动退群。本群严厉打击潜水者,本群会按聊天记录定期T些人。(发太多 一

知识

淘宝达人文章怎么写

阅读(202)

本文主要为您介绍淘宝达人文章怎么写,内容包括淘宝达人帖子该怎么写,淘宝达人简介怎么写,我已申请了淘宝达人,淘宝达人我不知道在哪里发文章,写文章必须用。如何成为达人: 只要在淘宝上爱购物、会挑选、有鉴赏力,同时,乐于分享,乐于帮助别人,通

知识

技术开发方案怎么写

阅读(225)

本文主要为您介绍技术开发方案怎么写,内容包括项目技术方案怎么写,怎样写技术方案,开发方案怎么写。项目执行方案的内容与格式(供参考)项目概况项目名称хх市食品药品监管系统基础设施建设项目实施方案2、项目建设内容必须清晰地叙述研究开

知识

goats音标怎么写

阅读(196)

本文主要为您介绍goats音标怎么写,内容包括goats的音标怎么写,sincerity音标怎么写,duck的音标是怎么写。habit的音标是[ˈhæbɪt],详细信息如下:habit 英 [ˈhæbɪt] 美 [ˈhæbɪt] n.习惯,习性;气质;宗教服装

知识

融券怎么用

阅读(562)

本文主要为您介绍融券怎么用,内容包括融资融券怎么操作,融券怎么操作,融资融券怎么操作举例说明。融资融券业务:是指证券公司向客户出借资金供其买入证券或出具证券供其卖出证券的业务。由融资融券业务产生的证券交易称为融资融券交易。融资

知识

hugpeople的音标怎么写

阅读(191)

本文主要为您介绍hugpeople的音标怎么写,内容包括单词hug的读音,音标,及含义,hugpeople是什么意思要正确的意思,people的音标是什么。embarrassed: [ imbærəst ] a. 尴尬的,局促不安的 例句与用法: 1. It was an embarrass

知识

inbad的音标怎么写

阅读(184)

本文主要为您介绍inbad的音标怎么写,内容包括bed的音标怎么写,in的音标怎么写,makethebad的音标怎么写。bed的音标为:英 [bed] 美 [bed] n. 床;基座;底层;河床;花坛;苗圃;地层 v. 安置;发生性关系 bed的基本意思

知识

节的笔顺笔画怎么写

阅读(255)

本文主要为您介绍节的笔顺笔画怎么写,内容包括节字笔顺怎么写呀,节的笔画顺序怎么写的,节的笔画顺序怎么写的。《节》的拼音:jié jiē 笔画数:5笔顺、笔画:横、竖、竖、横折钩、竖、基本释义:[jié]:1.竹子或草木茎分枝长叶的部分:竹~。

知识

久hou的hou字怎么写

阅读(254)

本文主要为您介绍久hou的hou字怎么写,内容包括被盐hou死的,“hou”字怎么写,hou辣的hou字怎么写,hou字怎么写。

知识

开除学籍处分怎么写

阅读(241)

本文主要为您介绍开除学籍处分怎么写,内容包括怎么写撤消开除学籍处分申请书,怎么写撤消开除学籍处分申请书,开除学籍怎样写。尊敬的学校及学院领导: 您好! 我是*学校,*班的学生。我于 年 月日在学校违反了*管理规定,干扰了正常的考学习序,并在

知识

另用英文怎么写

阅读(196)

本文主要为您介绍另用英文怎么写,内容包括"另外"英文怎么翻译,另一个用英文怎么写用英文怎么造句,一个.另一个.用英语怎么说。"另外"的英文:otherother 读法 英 [ʌðə(r)] 美 [ʌðər] 作形容词的意思是: 其他的;另外的;另一个;另一边2

知识

勤笔顺笔画顺序怎么写

阅读(227)

本文主要为您介绍勤笔顺笔画顺序怎么写,内容包括勤笔画顺序怎么写,勤笔画顺序怎么写,勤的笔画顺序怎么写。勤 拼音:qín 部首:力,部外笔画:11,总笔画:13五笔86:AKGL 五笔98:AKGE 仓颉:TMKS 笔顺编号:1221251

知识

c语言中if语法怎么写

阅读(237)

本文主要为您介绍c语言中if语法怎么写,内容包括c语言if语句的用法,c语言的if语法,C语言中if语句的一般形式怎么编写。c语言提供了三种形式的if语句:if(表达式)语句。例如:if(x>y)printf("%d",x);此时,如果表达式为真,则执行pri

知识

办会员卡组织语言怎么写

阅读(246)

本文主要为您介绍办会员卡组织语言怎么写,内容包括让顾客办会员卡的礼貌用语,请问会员卡(会员卡章程)该怎么写急急急,超市致会员促销活动短信话语怎么说怎么组织语言。第一章 总则第一条 本校校名为“xxxxxxxxxxxxxxxxx”。第二条 本校由个人

知识

易语言怎么写联网软件

阅读(412)

本文主要为您介绍易语言怎么写联网软件,内容包括如何做易语言联网软件,易语言如何做一个联网软件,易语言怎么做一个联网的登录程序。用易语言简单多了 需要通讯组件就可以实现 就不多少了 你用批处理实现的 代码 如下@Echo off&title cmd @

知识

r语言颜色代码怎么写

阅读(340)

本文主要为您介绍r语言颜色代码怎么写,内容包括游戏里字体的颜色的代码是,我想知道各种颜色的编码,各种颜色的代码是什么。游戏里字体的颜色的代码有:红色 #cFF0000、绿色 #c00FF00、蓝色 #c0000FF牡丹红 #cFF00FF、青色 #c00

知识

加油用不同语言怎么写

阅读(266)

本文主要为您介绍加油用不同语言怎么写,内容包括“加油”用世界不同的语言怎么说,求30种不同语言“加油”的写法,不要重复,加油用十种不同的语言怎么说。中文: "加油!" 读音: /`dja: `jou 日文: 「顽张れ」(がんばれ) 读音: /gan ba lei 韩文: 韩语“

知识

怎么破解易语言写的软件

阅读(473)

本文主要为您介绍怎么破解易语言写的软件,内容包括怎么破解易语言软件,怎样破解易语言写的EXE的软件要用到什么工具,请问大虾们易语言编写的软件用什么破解啊。花指令的插入,这当然是有必要的,有人说加了花指令没有什么用,现在的反编译软件基

知识

易语言空间人气量查询子程序怎么写

阅读(281)

本文主要为您介绍易语言空间人气量查询子程序怎么写,内容包括易语言外挂编辑的子程序名查看qq真怎么写,易语言怎么快速查找子程序被那个程序调用,大大门好,我是新入易语言,想知道写内存这个子程序该怎么写,给。如果真(X=X1)子程序1()如果真(X=

知识

易语言怎么写列表框

阅读(343)

本文主要为您介绍易语言怎么写列表框,内容包括易语言怎么做列表框项目保存和读取,易语言列表框,如何写代码当按钮1单击时候,列表框现行选中项能,易语言列表框的项目怎么写配置项。这个简单.版本 2.子程序 读取列表框项目.局部变量 文件号,

[/e:loop]