OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3855|回复: 9

这是C语言中的哪种用法?

[复制链接]

16

主题

28

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2016-7-13
在线时间
16 小时
发表于 2016-8-12 08:41:39 | 显示全部楼层 |阅读模式
1金钱
(void *)delay_ms,"void delay_ms(int num)",

最佳答案

查看完整内容[请看2#楼]

//oˉêyÃûáD±í3õê¼»ˉ(óû§×Ô¼oìí¼ó) //óû§Ö±½óÔúÕaàïêäèëòaÖ′DDμÄoˉêyÃû¼°Æä2éÕò′® struct _m_usmart_nametab usmart_nametab[]= { #if USMART_USE_WRFUNS==1 //èç1ûê1Äüá˶áD′2ù×÷ (void*)read_addr," ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2016-8-12 08:41:40 | 显示全部楼层
CAN_FilterMode 发表于 2016-8-12 08:50
在战舰F103的库函数教程——USMART实验里,就是这样在结构体里列出的函数列表

//oˉêyÃûáD±í3õê¼»ˉ(óû§×Ô¼oìí¼ó)
//óû§Ö±½óÔúÕaàïêäèëòaÖ′DDμÄoˉêyÃû¼°Æä2éÕò′®
struct _m_usmart_nametab usmart_nametab[]=
{
#if USMART_USE_WRFUNS==1         //èç1ûê1Äüá˶áD′2ù×÷
        (void*)read_addr,"u32 read_addr(u32 addr)",
        (void*)write_addr,"void write_addr(u32 addr,u32 val)",         
#endif                  
        (void*)delay_ms,"void delay_ms(u16 nms)",
        (void*)delay_us,"void delay_us(u32 nus)",         
        (void*)LCD_Clear,"void LCD_Clear(u16 Color)",
        (void*)LCD_Fill,"void LCD_Fill(u16 xsta,u16 ysta,u16 xend,u16 yend,u16 color)",
        (void*)LCD_DrawLine,"void LCD_DrawLine(u16 x1, u16 y1, u16 x2, u16 y2)",
        (void*)LCD_DrawRectangle,"void LCD_DrawRectangle(u16 x1, u16 y1, u16 x2, u16 y2)",
        (void*)LCD_Draw_Circle,"void LCD_Draw_Circle(u16 x0,u16 y0,u8 r)",
        (void*)LCD_ShowNum,"void LCD_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 size)",
        (void*)LCD_ShowString,"void LCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p)",
        (void*)led_set,"void led_set(u8 sta)",
        (void*)test_fun,"void test_fun(void(*ledset)(u8),u8 sta)",       
        (void*)LCD_Fast_DrawPoint,"void LCD_Fast_DrawPoint(u16 x,u16 y,u16 color)",
        (void*)LCD_ReadPoint,"u16 LCD_ReadPoint(u16 x,u16 y)",                                                                                  
        (void*)LCD_Display_Dir,"void LCD_Display_Dir(u8 dir)",
        (void*)LCD_ShowxNum,"void LCD_ShowxNum(u16 x,u16 y,u32 num,u8 len,u8 size,u8 mode)",
};                                                  这个啊哈哈
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2016-8-12 08:49:15 | 显示全部楼层
还可以这!怎么怀疑你前后没写全吧 前面有宏或者前面有函数声明等等
回复

使用道具 举报

16

主题

28

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2016-7-13
在线时间
16 小时
 楼主| 发表于 2016-8-12 08:50:45 | 显示全部楼层
cornrn 发表于 2016-8-12 08:49
还可以这!怎么怀疑你前后没写全吧 前面有宏或者前面有函数声明等等

在战舰F103的库函数教程——USMART实验里,就是这样在结构体里列出的函数列表
回复

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2016-8-12 09:02:10 | 显示全部楼层
CAN_FilterMode 发表于 2016-8-12 08:50
在战舰F103的库函数教程——USMART实验里,就是这样在结构体里列出的函数列表

我没看到,你把那页贴出来
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复

使用道具 举报

16

主题

28

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2016-7-13
在线时间
16 小时
 楼主| 发表于 2016-8-12 09:05:17 | 显示全部楼层
cornrn 发表于 2016-8-12 08:49
还可以这!怎么怀疑你前后没写全吧 前面有宏或者前面有函数声明等等

知道了,这是一个结构体的定义
原结构体是这样的:
struct _m_usmart_nametab
{
        void* func;               
        const u8* name;               
};
而我打出的代码是属于如下部分的:
struct _m_usmart_nametab usmart_nametab[]=
{
#if USMART_USE_WRFUNS==1         //Èç¹ûʹÄÜÁ˶Áд²Ù×÷
        (void*)read_addr,"u32 read_addr(u32 addr)",
        (void*)write_addr,"void write_addr(u32 addr,u32 val)",         
#endif
        (void*)delay_ms,"void delay_ms(u16 nms)",
        (void*)delay_us,"void delay_us(u32 nus)",       
        (void*)LCD_Clear,"void LCD_Clear(u16 Color)",
        (void*)LCD_Fill,"void LCD_Fill(u16 xsta,u16 ysta,u16 xend,u16 yend,u16 color)",
        (void*)LCD_DrawLine,"void LCD_DrawLine(u16 x1, u16 y1, u16 x2, u16 y2)",
        (void*)LCD_DrawRectangle,"void LCD_DrawRectangle(u16 x1, u16 y1, u16 x2, u16 y2)",
        (void*)LCD_Draw_Circle,"void Draw_Circle(u16 x0,u16 y0,u8 r)",
        (void*)LCD_ShowNum,"void LCD_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 size)",
        (void*)LCD_ShowString,"void LCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p)",
        (void*)led_set,"void led_set(u8 sta)",
        (void*)test_fun,"void test_fun(void(*ledset)(u8),u8 sta)",                                              
        (void*)LCD_ReadPoint,"u16 LCD_ReadPoint(u16 x,u16 y)",
};       
第二部分实际上是一个结构体数组的定义,之前没仔细看                                          
回复

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2016-8-12 09:06:25 | 显示全部楼层
CAN_FilterMode 发表于 2016-8-12 08:50
在战舰F103的库函数教程——USMART实验里,就是这样在结构体里列出的函数列表

//oˉêyÃûáD±í         
struct _m_usmart_nametab
{
        void* func;                        //oˉêyÖ¸Õë
        const u8* name;                //oˉêyÃû(2éÕò′®)         
};这个没看到吗
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2016-8-12 09:08:20 | 显示全部楼层
看到没有?
QQ截图20160812090645.jpg
5.jpg
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2016-8-12 09:08:34 | 显示全部楼层
明白了吗?
回复

使用道具 举报

16

主题

28

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2016-7-13
在线时间
16 小时
 楼主| 发表于 2016-8-12 09:08:53 | 显示全部楼层

明白啦 谢谢您
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-7 21:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表