[elektro] C -- illegal pointer hiba
elight at gmail.hu
elight at gmail.hu
Wed Sep 25 18:37:49 CEST 2013
Köszi, megnéztem ..
és nem , hanem
unsigned short data
ezek szerint egy változóba át is kellene szedegetnem
kilökés előtt..
A példa program meg valószínűen pointeres
SPI átadást használhatott. Majd kiguberálom
belőle , hogy beigazolódjon.
Történt , hogy egy nagy terjedelmű c++ -os
programból operálok át részeket PIC ben...
és már csak a stringes pointer aritmetika az
amin kerengek mint a gólya...
Akkor legalább ez már megvan.
De az
int strlen( char * )
definiciójú függvényt is
kidobja illegál-ra
A tényleges sor ami galibát okoz ilyesmi..
CMD_Text( unsigned int x; unsigned int y ; unsigned int chartype ;
const char *s )
{
CMD_Start_WR( SMD_SIZE*3 + strlen( s ) + 1 ); // itt fut az
"illegal pointer conversion" hibára ,
// a többi sor ha kihagyom ténylegesen jól lefut,
// csak éppen a parancs megnyitás kimarad.
CMD_Funct_Send32( SMD_TEXT ) ;
...
}
2013-09-25 18:21 keltezéssel, Bali Zoltan írta:
> Hali!
>
> Az "SPI1_Write( s )" is pointert vár?
>
>
> Üdv. Zoli
>
> 2013. 09. 25. 17:50 keltezéssel, elight at gmail.hu írta:
>> Sziasztok..
>>
>> Ezt miért dobhatja ki a mikroC fordító?
>>
>> void Funct_SendSTR( const char *s )
>> {
>> do
>> {
>> SPI1_Write( s ) ; // ezen soron "illegal pointer conversion"
>> } while ( *s++ != 1 );
>>
>> }
>>
>>
>> meg azt is kidobja pl hogy
>>
>> if( strlen( s ) == x )
>> {
>>
>> }
>>
>> más C nyelvben ez menni szokott?
>> vagy nagyon benézek valami?
>>
>> a 'const' mindenképpen szükséges.
>> hogyan írnátok helyesen?
>>
>>
>> Az is kérdésem hogy
>>
>> ( char * s ) és ( char *s )
>>
>> az ugyanaz, sajnos ezek a pointeres témák
>> általában összegabajodnak bennem.
>>
>>
>>
>> Üdv István
>>
>> -----------------------------------------
>> elektro[-flame|-etc]
>>
>>
>>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list