小编kma*_*mad的帖子

python regex findall和multiline

python 2.6.8

s= '''
foo 
bar
baz
'''
>>>re.findall(r'^\S*',s,re.MULTILINE)
['', 'foo', 'bar', 'baz', '']
>>>ptrn = re.compile(r'^\S*',re.MULTILINE)
>>>ptrn.findall(s)
['', 'foo', 'bar', 'baz', '']
>>>ptrn.findall(s,re.MULTILINE)
['baz', '']
Run Code Online (Sandbox Code Playgroud)

为什么在findall中使用MULTILINE标志有区别?

python regex

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

vim:针对不同文件扩展名的相同语法突出显示

有没有办法为不同的文件扩展名进行相同的语法突出显示?

例如:相同的突出显示

foo.c and foo.my_c_extension
Run Code Online (Sandbox Code Playgroud)

vim

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

指针指针

我正在涉及c指针,无法解释以下代码:

int main()
{
    int i = -3; 
    int *ptr;
    int **ptr2;
    int ***ptr3;
    ptr = &i; 
    ptr2 = &ptr;
    ptr3 = &ptr2;
    printf("ptr = %p\n",(void *)ptr);
    printf("&ptr = %p\n",(void *)&ptr);
    printAddr(&ptr);
    printAddr2(&ptr2);
    printAddr3(&ptr3);
    return 0;
}

void printAddr(int **num)
{
    printf("address of int ** = %p\n", (void *)&num);
}

void printAddr2(int ***num)
{
    printf("address of int *** = %p\n", (void *)&num);
}
void printAddr3(int ****num)
{
    printf("address of int **** = %p\n", (void *)&num);
}
Run Code Online (Sandbox Code Playgroud)

输出如下:

ptr = 0xbf9d64a0 …
Run Code Online (Sandbox Code Playgroud)

c pointers

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

C ++标头实现中的“ using”关键字

我在阅读《加速的c ++》第4章,他们在其中教授如何将c ++程序划分为不同的文件。在这里,他们写道,我们不应该在头文件中使用“ using _ :: ”构造,因为包括头文件的人可能想要使用其他实现。但是在头文件中实现方法时,可以使用“ using”。你能澄清一下吗?在链接实现目标文件时,程序最终不会使用“ using ::”构造吗?这是代码:

//median.h file
#ifndef GUARD_median_h
#define GUARD_median_h
#include <algorithm>
#include <vector>

double median(std::vector<double>); // <<<<<<<< no "using std::vector"
#endif
Run Code Online (Sandbox Code Playgroud)

但是在位数.cpp中:

#include <vector>
#include <stdexcept>

using std::vector; // <<<<< "using" construct used
using std::domain_error; // <<<<< "using" construct used

double median(vector<double> vec){
    if(vec.size() == 0) throw domain_error("median for an empty vector not defined");
    //....... rest of the implementation
}
Run Code Online (Sandbox Code Playgroud)

要澄清一点:

这是我的客户调用上面的标头:

#include "median.h"
using my_vector_impl::vector;
//..some function...
    std::vector v1;
    double …
Run Code Online (Sandbox Code Playgroud)

c++ header-files

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

标签 统计

c ×1

c++ ×1

header-files ×1

pointers ×1

python ×1

regex ×1

vim ×1