小编Ada*_*eld的帖子

如何在Visual Studio调试器中显示动态分配的数组?

如果您有一个静态分配的数组,Visual Studio调试器可以轻松显示所有数组元素.但是,如果您有一个动态分配并由指针指向的数组,那么当您单击+以展开它时,它将仅显示该数组的第一个元素.是否有一种简单的方法来告诉调试器,将这些数据显示为Foo类型和X大小的数组?

c c++ debugging visual-studio

144
推荐指数
6
解决办法
5万
查看次数

C中的函数式编程有哪些工具?

我最近一直在思考如何在C(而不是 C++)中进行函数式编程.显然,C是一种过程语言,本身并不真正支持函数式编程.

是否有任何编译器/语言扩展可以为语言添加一些函数式编程结构?GCC提供嵌套函数作为语言扩展; 嵌套函数可以从父堆栈框架访问变量,但距离成熟的闭包还有很长的路要走.

例如,我认为在C中真正有用的一件事是,在任何需要函数指针的地方,你都可以传递一个lambda表达式,创建一个衰变为函数指针的闭包.C++ 0x将包含lambda表达式(我觉得很棒); 但是,我正在寻找适用于直C的工具.

[编辑]为了澄清,我不是试图解决C中更适合函数式编程的特定问题; 如果我想这样做,我只是想知道那里有什么工具.

c functional-programming

142
推荐指数
9
解决办法
4万
查看次数

你如何在Bash中区分两个管道?

如何在不使用Bash中的临时文件的情况下区分两个管道?假设您有两个命令管道:

foo | bar
baz | quux
Run Code Online (Sandbox Code Playgroud)

而且你想diff在他们的输出中找到它们.一个解决方案显然是:

foo | bar > /tmp/a
baz | quux > /tmp/b
diff /tmp/a /tmp/b
Run Code Online (Sandbox Code Playgroud)

是否可以在Bash中不使用临时文件的情况下这样做?您可以通过在其中一个管道中管道来消除一个临时文件:

foo | bar > /tmp/a
baz | quux | diff /tmp/a -
Run Code Online (Sandbox Code Playgroud)

但是你不能同时将两个管道同时传输到diff中(至少不是以任何明显的方式).是否有一些聪明的技巧涉及/dev/fd不使用临时文件这样做?

bash diff pipeline

138
推荐指数
3
解决办法
3万
查看次数

.bashrc,.bash_profile和.environment之间有什么区别?

我已经使用了许多不同的基于*nix的系统,看起来我使用的Bash的每种风格都有不同的算法来决定运行哪些启动脚本.出于设置环境变量和别名以及打印启动消息(例如MOTD)等任务的目的,启动脚本是否适合执行这些操作?

是什么把事情之间的差异.bashrc,.bash_profile以及.environment?我也看到其他的文件,例如.login,.bash_login.profile; 这些是否相关?在物理登录,通过ssh远程登录以及打开新的终端窗口时,运行哪些不同?跨平台(包括Mac OS X(及其Terminal.app)和Cygwin Bash)是否存在显着差异?

bash shell environment

130
推荐指数
4
解决办法
45万
查看次数

是否有任何平台指向不同类型的指针有不同的大小?

C标准允许指向不同类型的指针具有不同的大小,例如sizeof(char*) != sizeof(int*)是允许的.但是,它确实要求如果指针转换为a void*然后转换回其原始类型,则必须将其与原始值进行比较.因此,从逻辑上讲,sizeof(void*) >= sizeof(T*)对于所有类型T,正确吗?

在当今使用的大多数常见平台上(x86,PPC,ARM和64位变体等),所有指针的大小都等于本机寄存器大小(4或8字节),而不管指向的类型.是否存在任何深奥或嵌入式平台,其中指向不同类型的指针可能具有不同的大小?我特别询问数据指针,虽然我也有兴趣知道是否存在函数指针具有异常大小的平台.

我绝对不会问C++的指向成员的指针和指向成员的指针函数.这些在常见平台上具有不寻常的大小,甚至可以在一个平台内变化,具体取决于指针类的属性(非多态,单继承,多继承,虚继承或不完整类型).

c pointers sizeof

57
推荐指数
7
解决办法
4909
查看次数

如何将CreateThread用于类成员的函数?

如何使用CreateThread()创建类成员函数的线程?

c++ winapi multithreading class

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

是否有一个Windows等同于HANDLEs的fdopen?

在Unix中,如果您有一个文件描述符(例如来自套接字,管道或从父进程继承),您可以FILE*在其上打开一个缓冲的I/O 流fdopen(3).

Windows上是否有等效的HANDLEs?如果你有HANDLE一个从你的父进程继承(从标准输入,标准输出,或标准错误不同),或从一个管道CreatePipe,是有可能得到一个缓冲FILE*从中流?MSDN确实提供了文档_fdopen,但它适用于返回的整数文件描述符_open,而不是通用HANDLE的.

c winapi stdio

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

strpbrk代表什么?

strpbrk()在C中做低级字符串工作时偶尔使用过,但我从来没有弄清楚它代表什么.我总是在脑海里把它称为"搅拌树皮",但这种感觉从来都不是很正确.

它不具有任何的其他字符串的功能,例如,作为一个明显词源strchr(STR荷兰国际集团CH一个ř ACTER)或strspn(STR荷兰国际集团SP一个Ñ).

我隐约记得在某处读到所有原始标准库函数都限制为7个字符的名称要么保持与Fortran兼容,要么因为在原始C标准中,长度超过7个字符的标识符被认为等同于它们的7个字符前缀或一些东西.任何人都可以确认/否认/澄清这个吗?

c

27
推荐指数
3
解决办法
7145
查看次数

我如何找到泄漏内存的进程

我有一个系统(Ubuntu)有许多进程,一个(或多个)有内存泄漏.有没有找到泄漏过程的好方法?有些过程是JVM,有些则不是.有些是自家种植的,有些是开源的.

linux ubuntu memory-leaks

25
推荐指数
6
解决办法
10万
查看次数

iPhone如何创建全屏应用?

我一直在尝试创建一个全屏视图.我计划使用核心图形进行渲染.我是iPhone开发的新手,请原谅这个基本问题.

这是我的设置代码;

- (void)loadView
{
    CGRect  rect = [[UIScreen mainScreen] bounds];
    GameView *main_view;
    main_view = [[GameView alloc] initWithFrame:rect ];
    main_view.clearsContextBeforeDrawing = NO;
    self.view = main_view;
    [main_view release];    
}
Run Code Online (Sandbox Code Playgroud)

然而,当我运行这个时,我会在时间和电池电量的顶部获得一个薄的状态栏.

我尝试寻找一些样品,但所有样品都是opengles.

有人可以告诉我哪里出错了吗?以及如何创建全屏视图.

谢谢

iphone rendering fullscreen uiviewcontroller

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