以下是我的代码,Qsort产生奇怪的结果:
#include <stdio.h>
#include <stdlib.h>
char values[] = { 0x02,0x04,0x0b,0x16,0x24,0x30,0x48,0x6c};
int compare (const void * a, const void * b)
{
return ( *(int*)a - *(int*)b );
}
int main ()
{
int i;
qsort (values, 8, sizeof(char), compare);
for (i = 0; i < 8; i++)
{
printf ("%0x ",values[ i ]);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这个程序的输出是:
虽然它应该与输入相同.有人可以解释为什么会这样,以及我如何纠正它?
我想通过使用字符串的值来访问结构中的成员:
struct hello_world
{
char rate;
char ssid;
};
Run Code Online (Sandbox Code Playgroud)
有一个varibale让我们说
char *string="ssid";
Run Code Online (Sandbox Code Playgroud)
我想使用此字符串的值来引用结构中的ssid成员hello_world.这可能吗?
我想从Perl脚本执行一个应用程序.
Perl脚本使用变量作为参数调用应用程序,其值是一个长字符串,其中包含大量空格.
应用程序将这些解释为单独的字符串,但我想将它们全部作为一个字符串.
这是Perl脚本中的代码:
$command = "Hello world here i come. Hope this works"
Run Code Online (Sandbox Code Playgroud)
当Perl脚本尝试调用应用程序时
./a.out $command
Run Code Online (Sandbox Code Playgroud)
在我试图访问的应用程序中argv[1],我只得到字符串Hello.argv[2]包含world但我想argv[1]包含其中包含的完整字符串$command.我该怎么做?