I am writing a c program for my microblaze on the fpga now i want to check if i recieved the message ok but strncmp and strcmp are not working the only way that is working is this way :
char*as=malloc(sizeof(int));
as=p->payload;
if (*(as)=='o') {//first letter o
if (*(as+1)=='k') {//second letter
but this will be hard once i deal with longer text , so any good approach ? i tried strncmp in this format :
if (strncmp(as,"ok",2)==0) //didnt work even changing 0 to 1 it just doesnt detectct it
check the syntax of "strncmp"
int strncmp ( const char * str1, const char * str2, size_t num );
where str1
is the C string to be compared, str2
is the C string to be compared and num
is the maximum number of characters to compare.
I think introducing the third variable num
i.e the maximum no of character you want to compare will solve your problem.