小编Day*_*ite的帖子

Qsort和问题

以下是我的代码,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)

这个程序的输出是:

2 6c 48 30 24 4 b 16

虽然它应该与输入相同.有人可以解释为什么会这样,以及我如何纠正它?

c sorting qsort

6
推荐指数
1
解决办法
478
查看次数

如何根据字符串的值访问`struct'的成员?

我想通过使用字符串的值来访问结构中的成员:

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.这可能吗?

c string struct

4
推荐指数
1
解决办法
1659
查看次数

将命令行参数传递给应用程序

我想从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.我该怎么做?

perl command

1
推荐指数
1
解决办法
165
查看次数

标签 统计

c ×2

command ×1

perl ×1

qsort ×1

sorting ×1

string ×1

struct ×1