小编l00*_*ake的帖子

C - 警告:格式'%s'需要类型'char*',但参数2的类型为'char(*)[20]'

我正在尝试运行一个简单的C程序,但是我收到了这个错误:"警告:格式'%s'需要类型'char ',但参数2的类型为'char()[20]'"

使用gcc 4.2.1在终端中运行Mac OSX Mountain Lion编译

#include <stdio.h>

int main() {
    char me[20];

    printf("What is your name?");
    scanf("%s", &me);
    printf("Darn glad to meet you, %s!\n", me);

    return (0);
}
Run Code Online (Sandbox Code Playgroud)

c arrays pointers

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

chown命令返回不允许操作

我正在使用覆盆子pi,并且很难使用以下教程为我安装的外部硬盘驱动器授予权限:

http://www.howtogeek.com/139433/how-to-turn-a-raspberry-pi-into-a-low-power-network-storage-device/

我现在已经在该外部硬盘驱动器上创建了文件夹,当我执行ls -l命令时,我返回以下内容:

drwxr-xr-x 2 root root 512 Aug 28 23:24 test
Run Code Online (Sandbox Code Playgroud)

它位于: /media/USBHDD1/shares

现在我试图给它所有写入读取和执行权限,甚至将所有者和组更改为pi:pi

但是,chmod 777不起作用 - 它不会返回错误,只是似乎没有效果

当我使用时

sudo chown -R pi:pi test/
Run Code Online (Sandbox Code Playgroud)

我收到了错误

chown: changing ownership of `test/': Operation not permitted
Run Code Online (Sandbox Code Playgroud)

这是一个linux问题,但我认为有背景和使用树莓派知识的人可以帮助我.

所需的额外信息:

当我运行pi@raspberrypi /media $ grep USBHDD1 /etc/mtab 它时返回:

/dev/sda1 /media/USBHDD1 vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0
Run Code Online (Sandbox Code Playgroud)

linux usb-drive fat chown raspberry-pi

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

试图在Mac OSX上安装wxpython

我正在尝试将wxpython安装到我的Mac OSX 10.8.3上.我从他们的下载页面下载磁盘映像并安装它.当我尝试安装软件包时,我收到一条错误消息,指出软件包已损坏且无法打开.有关如何解决此问题的任何建议?

我也试过通过终端打开包裹,但没有运气.

提前致谢.

python macos wxpython

6
推荐指数
2
解决办法
7370
查看次数

试图找到两个字符串中的匹配 - Python

我有一个用户输入两个字符串然后我想检查是否有任何类似的字符,如果有,请获取第一个相似性发生的位置,而不使用查找或索引功能.

以下是我到目前为止,但我没有完全工作.根据我到目前为止,我能够找到相似之处,但我不知道如何在不使用索引函数的情况下找到这些相似之处.

string_a = "python"

string_b = "honbe"

same = []

a_len = len(string_a)
b_len = len(string_b)

for a in string_a:
    for b in string_b:

        if a == b:
            same.append(b)          

print (same)
Run Code Online (Sandbox Code Playgroud)

现在输出是:

['h', 'o', 'n']
Run Code Online (Sandbox Code Playgroud)

基本上我要问的是,如何在不使用Python索引功能的情况下找到这些字符的位置?

python python-3.x

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

使用timedelta时小数位太多

我试图在小时和分钟内找到时间,然而,我知道如何做的唯一方法是使用我在下面所做的.下面也是我的输出,你可以看到,程序返回秒和小数后.

码:

def commercial_time (distance, speed_of_commercial):
    time = distance / speed_of_commercial
    seconds = time * 3600
    real = (datetime.timedelta(seconds = seconds))
    return real
Run Code Online (Sandbox Code Playgroud)

OUTPUT:

9:46:04.352515
Run Code Online (Sandbox Code Playgroud)

我的问题是,有没有办法摆脱".352515"?如果可能的话,我也想隐藏秒数.

python timedelta python-3.x

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

将未声明的参数保留为其默认值

我正在使用 Flask 和 Flask-Restful 创建 RESTful API,但遇到了 PUT 请求和参数的问题。我有一个 JSON 文件,其中包含:

{
    "checked": 1465628401,
    "number": 21600,
}
Run Code Online (Sandbox Code Playgroud)

当用户发送时,"/api/v1/status?checked=10"它会像应有的那样更改检查的值,但将number设置为 null。我想知道是否有一种方法可以拥有它,这样如果用户没有指定该参数,它就保持其当前值。

现在,我将 RequestParser 定义为:

parser = reqparse.RequestParser()
Run Code Online (Sandbox Code Playgroud)

并添加每个参数,例如:

parser_status.add_argument('checked', type=int)
parser_status.add_argument('number', type=int)
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,有没有办法默认每个 JSON 键保持其当前值,除非 PUT 请求中存在参数?

文档指出:另请注意:在请求解析器中声明但未在请求本身中设置的参数将默认为 None。我想知道是否有办法改变默认值。

python put flask flask-restful

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

在另一个字符串中多次查找字符串 - Python

我正在尝试查看字符串是否存在于另一个字符串中而不使用Python的预定义函数,例如find和index.

现在我的函数需要2个字符串作为参数,一个是我们要搜索的字符串,而另一个字符串是我们在第一个字符串中查找的字符串.

如果第一个字符串存在于第一个字符串中,我希望我的函数返回它在第一个字符串中出现的所有位置.

现在,我的函数能够找到第一个匹配项并返回一个索引,但是我希望找到多个匹配项而不是第一个匹配项.

以下是我的代码:

def multi_find (s, r):

    s_len = len(s)
    r_len = len(r)

    if s_len < r_len:
        n = -1
    else:
        m = s_len - r_len
        n = -1  # assume r is not yet found in s
        i = 0

        while n == -1 and i < m:
            # search for r in s until not enough characters are left
            if s[i:i + r_len] == r:
                n = i
            else:
                i = i + 1
    print (n) …
Run Code Online (Sandbox Code Playgroud)

python string python-3.x

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

为什么我的程序打印出的次数比预期的多?

我有一个程序读取文件,逐行检查,并逐字分解.我的问题是,我将把每个单词存储在一个数组中,但是我需要使用strcmp函数来验证这个单词是否已经存在.无论如何,下面是我的代码,我的问题是,为什么我的程序打印出1这么多次?我期待它只打印两次因为this在我的文本文件中出现两次.

while (fgets(line, sizeof(line), fi) != NULL) { // looping through each line

    line_count += 1;

    for (j = 0; j < sizeof(line); j++) { // convert all words to lowercase
        line[j] = tolower(line[j]);
    }

    result = strtok(line, delimiters);

    while (result != NULL) {
        word_count += 1;

        if (strcmp(result, "this")) {
            printf("1\n");
        }

        result = strtok(NULL, delimiters); // get the next token
    }
}
Run Code Online (Sandbox Code Playgroud)

以下是我的文字文件:

This is the first test.
This is the second …
Run Code Online (Sandbox Code Playgroud)

c strcmp

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