- #include <iostream> 
- using namespace std; 
-   
- int fun(char *arr) { 
- 	return sizeof(arr); 
- } 
-   
- int fun2(char arr[3]) { 
- 	return sizeof(arr); // It's treating the array name as a pointer to the first element here too 
- } 
-   
- int fun3(char (&arr)[6]) { 
- 	return sizeof(arr); 
- } 
-   
-   
- int main() { 
-   
- 	char arr[] = {'a','b','c', 'd', 'e', 'f'}; 
-   
- 	cout << fun(arr); // Returns 4, it's giving you the size of the pointer 
-   
- 	cout << endl << fun2(arr); // Returns 4, see comment 
-   
- 	cout << endl << fun3(arr); 
-   
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGZ1bihjaGFyICphcnIpIHsKCXJldHVybiBzaXplb2YoYXJyKTsKfQoKaW50IGZ1bjIoY2hhciBhcnJbM10pIHsKCXJldHVybiBzaXplb2YoYXJyKTsgLy8gSXQncyB0cmVhdGluZyB0aGUgYXJyYXkgbmFtZSBhcyBhIHBvaW50ZXIgdG8gdGhlIGZpcnN0IGVsZW1lbnQgaGVyZSB0b28KfQoKaW50IGZ1bjMoY2hhciAoJmFycilbNl0pIHsKCXJldHVybiBzaXplb2YoYXJyKTsKfQoKCmludCBtYWluKCkgewoJCgljaGFyIGFycltdID0geydhJywnYicsJ2MnLCAnZCcsICdlJywgJ2YnfTsKCQoJY291dCA8PCBmdW4oYXJyKTsgLy8gUmV0dXJucyA0LCBpdCdzIGdpdmluZyB5b3UgdGhlIHNpemUgb2YgdGhlIHBvaW50ZXIKCQoJY291dCA8PCBlbmRsIDw8IGZ1bjIoYXJyKTsgLy8gUmV0dXJucyA0LCBzZWUgY29tbWVudAoJCgljb3V0IDw8IGVuZGwgPDwgZnVuMyhhcnIpOwoJCglyZXR1cm4gMDsKfQ==