標(biāo)題:
各位路過大神幫看一下,關(guān)于C語言變量指針的問題
[打印本頁]
作者:
liulianww
時(shí)間:
2021-1-20 18:57
標(biāo)題:
各位路過大神幫看一下,關(guān)于C語言變量指針的問題
a=2;
SendString(a);
目的是想把一個(gè)變量通過串口發(fā)送到電腦上,
編譯的時(shí)候提示非法指針轉(zhuǎn)換
main.c(88): error C214: illegal pointer conversion
那么,a的變量該如何傳送出去?
作者:
pcf2000
時(shí)間:
2021-1-21 09:19
SendString原函數(shù)是如何定義的?!
作者:
IdeaMing
時(shí)間:
2021-1-21 09:24
你應(yīng)該使用senddata(a);sendstring要傳入指針,a你定義為a[],也可以
作者:
munuc_w
時(shí)間:
2021-1-21 09:29
senddata()是如何定義的?
作者:
munuc_w
時(shí)間:
2021-1-21 09:36
senddata()如果是這樣定義的senddata(u8 *x)的話,這樣調(diào)用senddata(&a)。
作者:
wufa1986
時(shí)間:
2021-1-21 09:43
應(yīng)該是&a吧
作者:
鄭漢松
時(shí)間:
2021-1-21 09:49
SendString函數(shù)數(shù)是發(fā)送字符串的,這個(gè)函數(shù)的參數(shù)應(yīng)該是一個(gè)字符串?dāng)?shù)組的地址,你發(fā)送單個(gè)應(yīng)該用sendchar這個(gè)函數(shù)
作者:
名字不是重點(diǎn)
時(shí)間:
2021-1-21 09:52
從字面上看,SendString當(dāng)是發(fā)送字符串,是一組數(shù)據(jù),你一個(gè)a在這邊的確不符,可能要SendByte()或 是Sendchar(),你把SendString()這個(gè)函數(shù)原型發(fā)上來看看。
作者:
1714461639
時(shí)間:
2021-1-21 10:10
&a取地址
作者:
人人學(xué)會(huì)單片機(jī)
時(shí)間:
2021-1-21 10:37
用我這個(gè)代碼,沒有死等!CPU效率高。。
單片機(jī)串口1打印程序 可以打印3個(gè)十六位的變量 波特率9600
www.torrancerestoration.com/bbs/dpj-201660-1.html
作者:
liulianww
時(shí)間:
2021-1-22 20:18
void send1()
{
SendByte('\t');
SendString("value:");
SendString(&a); //如果用這種方法串口收到空數(shù)據(jù)value:
// senddata(a); //如果用這種方法會(huì)提示main.c(67): error C267: 'senddata': requires ANSI-style prototype
SendByte('\n');
作者:
liulianww
時(shí)間:
2021-1-22 20:20
void SendByte(unsigned char sbyte)
這是原型
作者:
liulianww
時(shí)間:
2021-1-22 20:21
void SendString(unsigned char *pstr)
{
while(*pstr!='\0') //字符串是否發(fā)完
{
SendByte(*pstr); //發(fā)送字符串?dāng)?shù)據(jù)
pstr++; //指向下一個(gè)字符
}
作者:
rundstedt
時(shí)間:
2021-1-22 20:29
liulianww 發(fā)表于 2021-1-22 20:20
void SendByte(unsigned char sbyte)
這是原型
那么你在樓主位代碼中a也是unsigned char的話,就不應(yīng)該出錯(cuò)啊!
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1