Question: I have set my compression like this for my **NSMutableUrlRequest** on my iphone app (I use Monotouch, but it's a 1:1 API match):

```
var req = new NSMutableUrlRequest (new NSUrl (str), NSUrlRequestCachePolicy.ReloadIgnoringLocalAndRemoteCacheData, 20)
req["Accept-Encoding"] = "compress, gzip";  

```

When I download a resource (REST xml file) and monitor the bandwidth in the iPhoneSimulator, it indicates that the file is being downloaded at its raw file size (20 meg, zipped should be 3 meg-ish).

On my IIS 6 server I have set compression universally. Using a browser to the file works fine with compression when I monitor its bandwidth usage.

Ideas why?

![alt text](https://i.stack.imgur.com/PHcgV.png)

Answer: 
It sounds as if you're under the impression that a char\* "contains" characters. It does not. It merely *points* at *a* byte. The rest of the string is implied to consist of the subsequent byte in memory up until the next null byte. (You should also be aware that although the 'char' data type is a byte, by definition, it is not really a character - please be aware of Unicode - and nor is a byte necessarily an octet.)

The char\* is not an array, either, although there may exist an array of characters such that the pointer is pointing to the beginning of that array.
Here is my code  

So simple

```
#include <stdio.h>
#include<stdlib.h>
int main()
{
    char *str=(char *)malloc(100*sizeof(char));
    scanf("%s",str);
    str=&str[1];
    printf("%s",str);
    return 0;
}

```

str=&str[1] // here 1 indicates how many characters to remove.