标题:一个函数的参数类型是unsigned char*,调用时想传入一个char *的变量,可以嘛 ...
取消只看楼主
wengbin
Rank: 10Rank: 10Rank: 10
来 自:陕西西安
等 级:贵宾
威 望:19
帖 子:370
专家分:1846
注 册:2015-5-8
结帖率:100%
已结贴  问题点数:20 回复次数:1 
一个函数的参数类型是unsigned char*,调用时想传入一个char *的变量,可以嘛?
程序代码:
//函数原型
int DesEnc(
        unsigned char *pInData,
        int nInDataLen,
        unsigned char *pOutData,
        int *pOutDataLen
        );

程序代码:
//调用:
int ret = 0;
    char*  plain = "123465789";
    int plainlen = strlen(plain);

    unsigned char copybuf[2048];
    int coyplen = 0;

    char plain2[4096];
    int plainlen2 = 0;
    //用户使用的函数
    ret = DesEnc(plain, plainlen, copybuf, &coyplen);//这里报错了,说第一个参数处形参实参类型不匹配


[此贴子已经被作者于2016-4-24 16:31编辑过]

2016-04-24 16:27
wengbin
Rank: 10Rank: 10Rank: 10
来 自:陕西西安
等 级:贵宾
威 望:19
帖 子:370
专家分:1846
注 册:2015-5-8
得分:0 
有尝试将plain定义为unsigned char*型,但是strlen()就用不了了.....
2016-04-24 16:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-464071-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.663086 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved