Hallo, bei compilieren meines Quellcodes (in c) tritt bei der Zeile "num_chr_snd_sci = strlen((u08*)str_snd_sci_one);" untenstehende Fehlermeldung auf. Was ist das Problem? Gruß Samuel unsigned char str_snd_sci_one[80] = "Hello World\n"; unsigned short num_chr_snd_sci = 0; num_chr_snd_sci = strlen((unsigned char*)str_snd_sci_one); D:\moogsoft\LVDT Firmware for Development\main\ap\11\src\extLVDT.c(645): warning: #167-D: argument of type "unsigned char *" is incompatible with parameter of type "const char *"
Strings sind erstens standardmäßig vom Typ char und nicht /unsigned char/. Zweitens solltest Du mal in der Dokumentation nachsehen, welche Typen strlen für die Parameter erwartet... Die Konversion nach (unsigned char *) ist aus mehreren Gründen falsch.
Sieh Dir den Prototypen von strlen an - was für ein Argument erwartet das? const char* Du musst einen char* übergeben. Und was erzeugst Du mit Deinem Typecast? unsigned char* Das ist was anderes.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.