hvordan man får adgang flygtige char-array ved hjælp af ikke flygtige char pointer

S

scorrpeio

Guest
Jeg har en funktion, hvis argument består af en henvisning til usignerede char. Nu ønsker jeg at videregive en række af typen flygtigt usignerede char. :!: Hvis jeg prøver at give det direkte, er compileren ikke tillade mig at gøre det. Jeg synes, det skal typecasting skal gøres, men jeg er ikke sikker på om det virker. : Trist: Jeg søger om det på google så godt. Kan nogen her fortælle mig, hvad kan være den sandsynlige måde at gøre dette?
 
forudsat du har
Code:
 flygtige usignerede char x [10] = {'Z'};
og en funktion,
Code:
 void test (usignerede char * ch)
kan du forsøge med
Code:
 test ( (usignerede char *) x)
 
Det er arbejder. I første omgang prøvede det i omvendt måde, hvorpå, blev den normale pointer støbt til flygtige pointer. det er derfor, jeg gjorde får en fejl
 
Jeg har rettet problemer med nogle gamle compilere ved at droppe en konvertering til et "tomrum pointer", såsom (void *), før du kaster til den endelige pointer type. Der er fordele og ulemper ved ugyldige pointere, så vær omhyggelig med ikke at misbruge brugen af ​​dem. at bruge void * pointere i C - Stack Overflow [/url] [url = http://bytes.com/topic/c/answers/872557-what-use-void-pointer] Hvad er brugen af ​​en void * pointer ? - C / C + + [/url] Søg på internettet for mere discusion om dette emne.
 

Welcome to EDABoard.com

Sponsor

Back
Top