小编wea*_*key的帖子

char*和char []与strcpy()之间的区别

过去几个小时我遇到了一个问题,虽然我明白了.这是我的麻烦:

void cut_str(char* entry, int offset) {
    strcpy(entry, entry + offset);
}

char  works[128] = "example1\0";
char* doesnt = "example2\0";

printf("output:\n");

cut_str(works, 2);
printf("%s\n", works);

cut_str(doesnt, 2);
printf("%s\n", doesnt);

// output:
// ample1
// Segmentation: fault
Run Code Online (Sandbox Code Playgroud)

我觉得char*/char []有一些重要的东西,我没有来到这里.

c string char

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

Python及其参考资料

我目前想知道为什么这个适度的代码有一个我不期望的输出:

class Product(object):
    price = 0

    def __init__(self, tmp_price):
        self.price = tmp_price

class Market(object):
    products = []

    def __init__(self):
        self.products.append(Product(10))

a = Market()
b = Market()

print a.products[0]
print b.products[0]
print len(a.products)
Run Code Online (Sandbox Code Playgroud)

的确,我得到了一些输出:

<__main__.Product object at 0x7fe5899e46d0>
<__main__.Product object at 0x7fe5899e46d0>
2
Run Code Online (Sandbox Code Playgroud)

有人有解释吗?我想这与python处理引用的方式有关,除了......

python

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

标签 统计

c ×1

char ×1

python ×1

string ×1