[elektro] C -- illegal pointer hiba

elight at gmail.hu elight at gmail.hu
Fri Sep 27 09:36:40 CEST 2013


Köszi köszi, köszi.. :-)


Amit írtál, valami hasonló kellett!

Tulajdonképpen a szívás oka két
dolgból adódott..

Egyszer az, a typedef-eket a fordító bevette ,
( nem adott ki egyikre se  hibát )
de valamelyiket nem egészen
úgy értelmezhette , ahogyan kellene.

Ezt még induláskor sejtettem, és jó előre kicseréltem
az összeset . Illetve kettő figyelmetlenségből
mégis  benne   maradt ebben a párezer sorban..
Nagy volt az öröm , amikor kibukott a dolog!

A másik téma , hogy a strlen függvény ugyan
nem dobja ki a const pointer meghatározást hibára,
de nekem mint kiderült mindenképpen  1-et adott vissza
( talán valami belső hiba folytán ? ) .
Mikor teljesen kiderült , nem teszteltem tovább
inkább  megírtam azt amit javasolsz...
A printf is egyszer hasonló apró bosszantó hiba miatt
lett újraírva.. Igy ez már sajna elég   ismerősen csengett.
Ezt hívják helyismeretnek.
( nem várom hogy javítsák, inkább együtt élek vele. )

Még volt egy kis elértelmezésem
a 4 bytos szavak határra illesztésén.
( string kiegészítés kellő számú 0-val,
    hogy a karakterek séáma a lezáró
    nullával együtt oszható legyen néggyel. )

Mert a

next_cmd_wr_address = ( next_cmd_wr_address + ( (  ( count + 3 ) >> 2 ) 
<<2 ) )  & 0x0FFF;

és a

next_cmd_wr_address =  ( next_cmd_wr_address + (  count + 3 ) ) & 0x0FFF;

valahogy lehet,  talán nem egészen ugyanazt az eredményt adja.
Most fáradt vagyok belegondolni.
A második  jött be igazából.

Na mindegy .
Azóta alaposan megteszteltem..
   És most már minden  fv.  OK.
Azért akadt  egynéhány ..
Lehet  nemsokat aludtam az éjjel..  ?:-D

Üdv István





2013-09-26 07:19 keltezéssel, Móczik Gábor írta:
> 2013.09.25. 19:26 keltezéssel, elight at gmail.hu írta:
>> Gyári kódos mikroC-t használok régóta..
>> elég nagy gyakorlattal,
>> ebben  nagyonnagy részben meg is bízok.
>> ( Ez tehát kiesett, de azért Ők se tévedhetetlenek.
>>      néha bogarászni kellett ASM-ben is..  )
>>
>>
>> Általában ha bepipálok egy libraryt ,
>> az be is fordítja.. Csak a sajátokat kell def-ni..
>> Meg van egy buil_in.h , de azt alapból be szoktam.
> De azért a headert include-olod a C fájlban?
> Illene...
>
> void Funct_SendSTR(  const char *s )
> {
>       while(*s) SPI_Write(*s++);
> }
>
> -----------------------------------------
>            elektro[-flame|-etc]
>



More information about the Elektro mailing list