c - difference between strlen(string) and strlen( *string) -


let's have array of strings of same size.

char strings[][max_length]; 

what difference between strlen(strings) , strlen(*strings)?

i know strings address of first string in array,

but *strings?

first, don't this. c allow lots of things bad idea. doesn't mean ought it. :)

while may have compiler warnings, these 2 identical. reason definition:

char strings[][max_length]; 

the allocation end being 1 continuous block. within block of memory, there no "structures" or management devices can used identify individual strings start , stop. creates interesting situation.

effectively, *string , string both pointers precisely same memory location. means calling strlen on either 1 of them return null delimited string length of first element in first array.

however, must reiterate... don't this.


Comments

Popular posts from this blog

android - net_scheduler holding wakelock -

sql - MySQL : Getting Entries from a many-to-many table -

java - Retrieving data from database using jsp (Hibernate + Spring + Maven) -