对于一个在linux环境下的程序,需要传递字符串的参数,当这样执行的时候:
./test 1 2 key1=value1&key2=value2&key3=value3
发现程序出现如下的结果:

如何解释呢?
这是因为注意看我们的字符串的内容,含有“&”这个特殊的符号,这个符号在linux的shell环境下,是表示在后台运行的意思。所以出现如上的错误。
所以正确的执行方式是要如下格式 ./test 1 2 “key1=value1&key2=value2&key3=value3”
本文探讨了在Linux环境下,使用特殊符号'&'可能导致的程序执行问题,详细解释了其背后的原因,并提供了正确的执行方式,确保程序能够正常运行。
对于一个在linux环境下的程序,需要传递字符串的参数,当这样执行的时候:
./test 1 2 key1=value1&key2=value2&key3=value3
发现程序出现如下的结果:

如何解释呢?
这是因为注意看我们的字符串的内容,含有“&”这个特殊的符号,这个符号在linux的shell环境下,是表示在后台运行的意思。所以出现如上的错误。
所以正确的执行方式是要如下格式 ./test 1 2 “key1=value1&key2=value2&key3=value3”

被折叠的 条评论
为什么被折叠?