[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] How to use char "\"
From: |
Charles Gordon |
Subject: |
Re: [Tinycc-devel] How to use char "\" |
Date: |
Tue, 30 Sep 2014 23:12:57 +0200 |
On 30 sept. 2014, at 18:46, Daniel Glöckner <address@hidden> wrote:
> Hi,
>
> On Wed, Oct 01, 2014 at 12:06:24AM +0800, Thomas Preud'homme wrote:
>>> I have a problem with the char "\". For example in the line:
>>>
>>> strpbrk (file_name,"\*?")
>>>
>>> ir order to know if i have a simple file name, tcc tells me "unknown
>>> escape sequence".
>>
>> The manpage doesn't say that the strings accept escape sequence. Is it even
>> defined in the standard? Sounds like a bug in TinyCC.
>
> Thomas, C does support the escape sequences \a, \b, \f, \n, \r, \t,
> \v, \', \", \?, \\, \<3octal>, \x<2hex>, \u<4hex>, and \U<8hex>.
More precisely, and contrary to popular belief, \x<at least one isxdigit char>.
Standard C specifies this.
“\023” is a string with only one character.
> I guess BCC probably interpreted \* as \\*.
BCC should interpret “\*” as “*”, otherwise it is a non standard behavior.
The code fragment probably attempts to catch forbidden characters in file_name.
\ is the ominous path separator in the MSDOS/Windows world (/ can be used as
well in Windows and in MSDOS)
The correct string for this should have been “\\*?"
To port this code to unix, you should change the string to “/*?”
and to make it somewhat more portable, you might want to change it to “/\\*?”
But this code is obsolete anyway: note that the restriction on * and ? in
filenames does not exist in most unix file systems, nor probably in Windows and
Mac modern file systems.
wildcard expansion is actually a feature of the command line interpreter (aka
shell), and of some very specific file searching APIs in Windows.
Chqrlie
- Re: [Tinycc-devel] How to use char "\", (continued)
- Re: [Tinycc-devel] How to use char "\", Thomas Preud'homme, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", Daniel Glöckner, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", Jefsey, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", Evan Langlois, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", JFC Morfin, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", Evan Langlois, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", arnold, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", Evan Langlois, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", grischka, 2014/09/30
- Re: [Tinycc-devel] How to use char "\", Charles Gordon, 2014/09/30
- Re: [Tinycc-devel] How to use char "\",
Charles Gordon <=
- Re: [Tinycc-devel] How to use char "\", Evan Langlois, 2014/09/30