标题:
各位路过大神帮看一下,关于C语言变量指针的问题
[打印本页]
作者:
liulianww
时间:
2021-1-20 18:57
标题:
各位路过大神帮看一下,关于C语言变量指针的问题
a=2;
SendString(a);
目的是想把一个变量通过串口发送到电脑上,
编译的时候提示非法指针转换
main.c(88): error C214: illegal pointer conversion
那么,a的变量该如何传送出去?
作者:
pcf2000
时间:
2021-1-21 09:19
SendString原函数是如何定义的?!
作者:
IdeaMing
时间:
2021-1-21 09:24
你应该使用senddata(a);sendstring要传入指针,a你定义为a[],也可以
作者:
munuc_w
时间:
2021-1-21 09:29
senddata()是如何定义的?
作者:
munuc_w
时间:
2021-1-21 09:36
senddata()如果是这样定义的senddata(u8 *x)的话,这样调用senddata(&a)。
作者:
wufa1986
时间:
2021-1-21 09:43
应该是&a吧
作者:
郑汉松
时间:
2021-1-21 09:49
SendString函数数是发送字符串的,这个函数的参数应该是一个字符串数组的地址,你发送单个应该用sendchar这个函数
作者:
名字不是重点
时间:
2021-1-21 09:52
从字面上看,SendString当是发送字符串,是一组数据,你一个a在这边的确不符,可能要SendByte()或 是Sendchar(),你把SendString()这个函数原型发上来看看。
作者:
1714461639
时间:
2021-1-21 10:10
&a取地址
作者:
人人学会单片机
时间:
2021-1-21 10:37
用我这个代码,没有死等!CPU效率高!!!
单片机串口1打印程序 可以打印3个十六位的变量 波特率9600
www.51hei.com/bbs/dpj-201660-1.html
作者:
liulianww
时间:
2021-1-22 20:18
void send1()
{
SendByte('\t');
SendString("value:");
SendString(&a); //如果用这种方法串口收到空数据value:
// senddata(a); //如果用这种方法会提示main.c(67): error C267: 'senddata': requires ANSI-style prototype
SendByte('\n');
作者:
liulianww
时间:
2021-1-22 20:20
void SendByte(unsigned char sbyte)
这是原型
作者:
liulianww
时间:
2021-1-22 20:21
void SendString(unsigned char *pstr)
{
while(*pstr!='\0') //字符串是否发完
{
SendByte(*pstr); //发送字符串数据
pstr++; //指向下一个字符
}
作者:
rundstedt
时间:
2021-1-22 20:29
liulianww 发表于 2021-1-22 20:20
void SendByte(unsigned char sbyte)
这是原型
那么你在楼主位代码中a也是unsigned char的话,就不应该出错啊!
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1