-w (set Working directory) switch
Sets the working directory for the temporary base archive. By default, 7-Zip builds a new base archive file in the same directory as the old base archive file. By specifying this switch, you can set the working directory where the temporary base archive file will be built. After the temporary base archive file is built, it is copied over the original archive; then, the temporary file is deleted.
Specifies the destination directory path. It's not required that a path end with a backslash.
If <dir_path> is not assigned, then 7-Zip will use the Windows temporary directory.
7z a -tzip archive.zip *.cpp -wc:\temp
adds *.cpp files to the archive.zip archive, creating a temporary archive in c:\temp folder.