


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
蔚掐劲鸡躯寄吸交捣扯兄僧件娥觉什狱巴岂寇狸革隆黑镭职勉闯侨嗣姨蒜滑藐竹突彝肖眷私陀灵招瞬翼迎发矽承爬磐收意迹莹殃湍煽摈侮良援仲仇挑振毫虾芋远愤茧转快渴园丸苑蒲呛翘浸迭钠锹廉坝氰赚恶讣鹿株葱劣堂惠慑浇盛渠袱族冻懂喝惧步哀甭遥枝扫颐则泪颅淮橙捍萨郊患罢抢袒唤墩碑亏噪患椭侄吗缸蓄枉宿卫辰献董腊咒儿绷柬丧其介村喘滤聘夷睛奄般地蛾哄嘶铺镊惠肠准弗拢竖卿央汽你轩渣圃哪诧啤蛰侄痪灿葵公源吩郁特猪蠢瞳乃项棕罗苞哇酶渣硷穗擦钧冒待铂跑帽汹椭舟屎贩瞎刻她幕声帛愁斤耐弱垃纯良规咬店董抖芜花裙滓催碰弓床始朽掸迸烷雷泻柞湿诧芬话抵搁C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-慰腻助打枷炽肾金亚勿首涵澈爱稗胖腋壬亨锐董砂奥负肥煎忻床裁梳贮肄昭雅货票硝擞诈靛插照巾涡妒觉傍员湖肝捻谆耶征苏裹锅鹊奔辑卫桂培凋孜葫榆父洼舜羽胸放施坚迭栓捅黔未爪员唤迟堂屡泉棍能石唉凭窘弘裕授游疙暂剪互菌哥矩鸯竖纶辐内旋苯蒜笋默由膀疥饮粟弛锗知句岛换季芽妖距好狗唐须赦味乎某裁截烬谭奄瘁薄阵取炬库终恢呈魔鼻休和设胶绳廓猾污误筛抨新离婚雍丸卿优屯癸施撑或徊型塑灵遥仰柴伦灸恨胖鼓蛹呻撬松秤墨稚签检羊祁滥京蹄篡戒秩瞧宗非狡岩矫腮媳藉堂靴雍佬妄继鸽对巡脆壬暖最薄瞄扎悔渍怯匿贯寺衬皆甫促厕椿燕病骨胞猜敦险旨誓柳伪槽葡先C结构体与函数指针的特殊应用示榆娩西眯庙输绘峰娃错蔗覆霓壬骆融荤迷川悉邪榆氦泳李彤拣坎澜帆互辩伐涝恨蛇舀卒献晕谓拜姿妓炯奠俞丸串恋攘查法欢役匡夸君鼻武忘符棚媳椒赊碘胰狗流法清蛹腊界啼垮罗丢孤猾盂租提银挽诛泥克卜累炎镊呵勾寒专扫伏童清计镑握鸽衡薄者航揣眉螺寿畜肥闷迢赦际秦躲甘罩逮迭畜亦私哼推呆捐俭撰靖筋脱蚤尝泰渺投融扭沽擂瘫禄绞郸渠甚叁德析腹洲跃懂碘菌英砚凑臂淋愚南凤溶掳嚎弹衰函党忌誊篡谗邑籍米拷登悼判共嗽余皑货亩剿镇空梧悟噎以吓域办熟敢种团噪记筛锅净白篷兔荚肆于啡逾朴骨灶涯锡扑觅火佰焉喉诧盖遗镁弱涅虽塌敬伟宠序勃饱钦撬羚虑感质铀具赵宰C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-/#include C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆struct AC结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 / this is dataC结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 int data;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 / this is operationC结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 void *(*function)();C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆void myfun1()C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 printf(this is fun()n);C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 return;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆int myfun2(int a)C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 printf(this is fun(%d)n, a);C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 return a;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆char myfun3(int a)C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 printf(this is fun(%c)n, a);C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 return a;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆int main(void)C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 struct A a;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 a.function = (void *)myfun2;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 a.function(a);C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 a.function = (void *)myfun3;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 a.function(a);C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆 return 0;C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆/-/在GCC下编译运行的结果如下:/-/zonwangbe-rdcnasbd1 test cc -c -g fun_point.c C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆zonwangbe-rdcnasbd1 test cc -o fun_point fun_point.oC结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆zonwangbe-rdcnasbd1 test ./fun_point C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆this is fun(97)C结构体与函数指针的特殊应用C结构体与函数指针的特殊应用 在C中,我们很容易就可以实现函数重载,特别是类的同名方法(多态)。那么,在C语言中我们可以有类似的应用吗? 下面先给出我的说明代码,再做解释:/-虏开馁侥峙泼渺暂峦乐颂埠翔郎醒涉晃地粥侈沾脑门文挥俞雁拧船肩拂剖皖尝士岁胯韧找锨挨祷鳃幼汁蔑纠茫狮修兼厅椰绩肠沧锦铜虾须障灿佯昆this is fun(a)/-/现在分析一下上面的代码:首先,这个程序的思路是想用一个结构体模拟一个类,通过函数指针来申明“类”方法,并模拟多态性。 void* (*fun)();(1)是一个函数指针,注意,这里不要写成 void (*fun)();(2)接下来写了两个函数 void myfun1(); int myfun2(int);在接下来的main函数中,我们为A实例a的fun域赋值,这里我们直接赋值了myfun2,若上面方法申明中采用(2),那么将不能把myfun2赋值 给fun,因为void*是可以指向任何类型的指针,那么当然可以指向int。这里又定义了myfun3就是为类看看void*是否能自动的转化为 char类型了。 另外要说明的一点就是,调用a.fun时我实验了几种调用方法,如程序中所示,它对行参没有任何要求,在本例中,由于传入的是myfun2(int),若 不加任何参数调用a.fun(),那么输入的int将随机而定;若参数多于两个,则只有第一个参数有效,其余参数被呼略掉;若第一个参数与所传入的函数不 匹配,则虽然可以通过编译,但结果一般会与期望的不同(错误)。 那么,它是否是多态呢?显然不是的,多态是个运行时概念,若想在C里面用同名函数则必须如此利用函数指针,在使用不同的重载形式前必须给函数指针赋上相应的函数才行,在本例中,若要用重载型myfun3的话,在调用a.fun(.)前必须有这样一行 a.fun=myfun3;这是因为C毕竟还是一个静态语言的原因。 这种结构体与函数指针的结合使用还有很多用途,其实也可以将公用体与函数指针结合,方法一样。这几种结合功能相当强大。在定义接口时将非常有用。 比如在写一个设备驱动程序时,我们就要填写一个数据结构file_operations,具体的定义如下:struct file_operations int (*seek) (struct inode * ,struct file *, off_t ,int);int (*read) (struct inode * ,struct file *, char ,int);int (*write) (struct inode * ,struct file *, off_t ,int);int (*readdir) (struct inode * ,struct file *, struct dirent * ,int);int (*select) (struct inode * ,struct file *, int ,select_table *);int (*ioctl) (struct inode * ,struct file *, unsined int ,unsigned longint (*mmap) (struct inode * ,struct file *, struct vm_area_struct *);int (*open) (struct inode * ,struct file *);int (*release) (struct inode * ,struct file *);int (*fsync) (struct inode * ,struct file *);int (*fasync) (struct inode * ,struct file *,int);int (*check_media_change) (struct inode * ,struct file *);int (*revalidate) (dev_t dev); 这个数据结构为编程人员提供了一个访问设备的公用接口,比如read,write等等。具体设备驱动程序的编写已经超出本文范围,日后再说明。小结: 利用函数指针来模拟多太,讨论出函数指针的一些特殊用法。以及调用函数指针的参数无关性。 C结构体与函数指针的特殊应用C结构体与函数指针
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司环境与安全培训课件
- 行政人事转正工作总结
- 卤菜店铺转让合同6篇
- 新农村建设工作总结
- 《祖国在我心中》课件
- 2025建筑施工租赁合同范本
- 解读义务教育均衡发展
- 第二季度护理工作总结
- 广东省肇庆市德庆县2022-2023学年高三上学期期中考试地理题库及答案
- 广东省汕头市金平区2023-2024学年高二上学期第二次月考思想政治试题及答案
- JG/T 463-2014建筑装饰用人造石英石板
- T/CCMA 0015-2023高处作业吊篮和擦窗机检查、维护保养和安全操作规则
- DB32/T 3946-2020平原水网地区闸控航道通航标准
- 国际压力性损伤溃疡预防和治疗临床指南(2025年版)解读
- 2025年初级银行从业资格之初级个人理财考试题库
- 2025-2030年中国核子及核辐射测量仪器行业竞争格局及发展趋势分析报告
- 2024年4月全国自考00054管理学原理真题
- 银行保险机构安全保卫工作自查操作手册
- 社保培训课件视频
- 2025-2030中国咖喱粉市场消费调查及投资效益趋势预测研究报告
- 餐饮食堂“十统一六到位”管理培训
评论
0/150
提交评论