Question: > 
> **Possible Duplicate:**  
> 
> [What's the @ in front of a string for .NET?](https://stackoverflow.com/questions/556133/whats-the-in-front-of-a-string-for-net) 
> 
> 
> 

I understand using the `@` symbol is like an escape character for a string.

However, I have the following line as a path to store a file to a mapped network drive:

`String location = @"\\192.168.2.10\datastore\\" + id + "\\";`

The above works fine but now I would like to get a string from the command line so I have done this:

`String location = @args[0] + id + "\\";`

The above doesn't work and it seems my slashes aren't ignored. This my command:

`MyProgram.exe "\\192.168.2.10\datastore\\"`

How can I get the effect of the `@` symbol back?

Answer: 
The **@** symbol in front of a string literal tells the compiler to ignore and escape sequences in the string (ie things that begin with a slash) and just to create the string "as-is"

It can also be used to create variables whose name is a reserved work. For example:

```
int @class=10;

```

If you don't prefix the @ then you'd get a compile-time error.

You can also prefix it to variables that are not reserved word:

```
int @foo=22;

```

Note that you can refer to the variable as **foo** or **@foo** in your code.
The @ symbol is only relevant for string literals in code. Variables should never modify the contents of a string.