 <p>You need to quote the argument, and you should use single quotes, <code>'</code>, in order to stop your shell from attempting to evaluate anything inside it.</p> <p>What happens is that every ampersand, "&amp;", on your command line launches a background process.</p> <p>The first process is <code>./demo 1 https://www.google.co.in/search?sourceid=chrome-psyapi2</code>, and all the following are assignments to variables.</p> <p>You can see from the output (it looks like you didn't post all of it)</p> <pre><code>[1] 8680 [2] 8681 [3] 8682 [4] 8683 [5] 8684 [6] 8685 [7] 8686 [2] Done ion=1 [3] Done espv=2 [4] Done ie=UTF-8 [6]- Done q=size%20of%20unsigned%20char%20array%20c%2B%2B </code></pre> <p>that background process 2 is <code>ion=1</code> (pid 8681), process 3 (pid 8682) is <code>espv=2</code>, and so on. </p>