When you're passing a literal string (rather than a variable that contains the string) as an argument in a function call, you use expression syntax, which requires it to be in quotes. If you were to use the literal string in a command like FileReadLine, then it requires you to use "traditional" syntax rather than expression syntax, unless you force it to use expression syntax with a % followed by a space. I know it makes things confusing while learning the language.
Example using a literal string with traditional syntax:
FileReadLine,temp, D:\common\preferences\prefs.cs, 1
Example using a literal string with forced expression syntax:
FileReadLine,temp, % "D:\common\preferences\prefs.cs", 1
Similarly, you can use traditional or expression syntax if you use a variable instead of a literal string as HotKeyIt showed. So the above examples using a variable become:
FileReadLine,temp, %file%, 1
FileReadLine,temp, % file, 1 (subtle but important difference)
In fact, the assignment of the variable itself can be done either way, affecting both the assignment operator and the way the value is shown.
file = D:\common\preferences\prefs.cs
file := " D:\common\preferences\prefs.cs"