Search Results

Search found 3 results on 1 pages for 'artefacto'.

Page 1/1 | 1 

  • cmd.exe Command Line Parsing of Environment Variables

    - by Artefacto
    I can't figure how to have cmd.exe not interpret something like %PATH% as an environment variable. Given this program: #include<stdio.h> #include<windows.h> int main(int argc, char *argv[]) { int i; printf("cmd line: %s\n", GetCommandLine()); for (i = 0; i < argc; i++) { printf("%d: %s\n", i, argv[i]); } return 0; } I have these different outputs according to the position of the arguments: >args "k\" o" "^%PATH^%" cmd line: args "k\" o" "%PATH%" 0: args 1: k" o 2: %PATH% >args "^%PATH^%" "k\" o" cmd line: args "^%PATH^%" "k\" o" 0: args 1: ^%PATH^% 2: k" o I guess it's because cmd.exe doesn't recognize the escaped \" and sees the escaped double quote as closing the first, leaving in the first case %PATH% unquoted. I say this, because if I don't quote the argument, it always works: >args ^%PATH^% "k\" o" cmd line: args %PATH% "k\" o" 0: args 1: %PATH% 2: k" o but then I can have no spaces...

    Read the article

  • Make DLL dependent to other DLLs (Visual Studio IDE)

    - by Artefacto
    I'm having an inconsistency when compiling a DLL (let's call it x.dll) by calling cl.exe obj1.obj obj2.obj ... lib1.lib lib2.lib ... /link /out:x.dll /dll /debug and When using the IDE (which calls link directly, I believe). Let's say lib1.lib is an import library for lib1.dll. Opening the DLL generated by calling cl.exe in the depency walker shows it depends on lib1.dll. However, when using the IDE, the generated program is smaller and does not depend on lib1.dll. This IDE-generated image makes the program that uses x.dll crash sometimes. The question is: how do I get the correct behaviour from the IDE?

    Read the article

  • Is void *p = 0L valid?

    - by Artefacto
    In this answer, sassman initializes a pointer with: zend_class_entry* ce = 0L; My question is – is this valid? I would say it isn't, to initialize the variable with a null pointer either an unadorned (and possibly casted to void *) 0 constant, or some macro that evaluates to that such as NULL should be used. However, I can't find definitive language in the standard that supports this interpretation. All it says is: An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant.

    Read the article

1