小编Sab*_*a S的帖子

由于zip退出状态为12,因此中止

make在尝试zip -u某些文件后暂停并报告错误代码为12 .

错误代码12实际上是zip的退出状态,表示它"无所事事".

我不明白为什么这是一个非零退出状态.让zip安静地什么都不做是不是更合适?如果zip无关,它似乎不是一个实际问题.

我可以压制它:告诉make通过调用忽略zip的非零退出状态-zip -u.但这种方法的问题是12是我想忽略的唯一退出状态.所有其他人都表示会导致我想要中止的实际问题make.

也许我可以设置一个等于输出的变量echo $?,然后测试0或12但是zip在.mk文件中的每个语句之后执行此操作似乎很明显.

有一种优雅的方式来处理这个问题吗?

unix zip makefile

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

Objective-C,Storyboard:instantiateViewControllerWithIdentifier返回nil

我有一个UITableViewController,它有一个storyboard push segue,从原型单元格链接到一个详细页面,一个普通的旧UIViewController.在故事板中,细节ViewController具有标识符,并且segue具有与细节标识符相同的标识符,除了第一个字母是小写的.此外,细节ViewController AttractionDetailViewController在类下拉列表中选择了"自定义类"().

不行.问题是instantiateViewControllerWithIdentifier:@"AttractionDetails退货nil.

相关代码.首先是prepareForSegue调试器从未输入的方法.

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"attractionDetails"])
    {
        AttractionDetailViewController *attrDetailVC = [segue destinationViewController];
    }
}
Run Code Online (Sandbox Code Playgroud)

相反,它进入这个方法:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    //AttractionDetailViewController *attrDetailVC = [[AttractionDetailViewController alloc] init];
    AttractionDetailViewController *attrDetailVC = [self.storyboard instantiateViewControllerWithIdentifier:@"AttractionDetails"];

    NSIndexPath *selIndexPath = [self.tableView indexPathForSelectedRow];
    attrDetailVC.theAttraction = [attractions objectAtIndex:indexPath.row];
    [self.navigationController pushViewController:attrDetailVC animated:YES];
}
Run Code Online (Sandbox Code Playgroud)

因为instantiateViewControllerWithIdentifier返回nil它当然会引发异常.真正有趣的是,如果我使用这alloc init条线,它可以工作,但屏幕全黑.

无论如何,我已经读过这个并尝试了一些不同的东西,我仍然受到阻碍.有没有人有什么建议?

objective-c storyboard xcode4

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

Linux,C,ncurses:由printw引起的段错误

有什么原因printw()会导致细分错误?

没有它,代码就可以了。坏了。它似乎并没有做任何深奥的事情,所以我不确定如何开始理解这里的错误所在。

在此先感谢您的任何建议!

#include <ncurses.h>
...
initscr();
noecho();
cbreak();
...
    void draw_court()
    {
        move(TOP_ROW-1, LEFT_COL+4);
        printw("LIVES REMAINING: 3");

        int i;
        for (i = 0; i < RIGHT_COL; i++)
            mvaddch(TOP_ROW, LEFT_COL+i, H_LINE);

        for (i = 1; i < BOT_ROW-TOP_ROW; i++)
            mvaddch(TOP_ROW+i, LEFT_COL, V_LINE);

        for (i = 0; i < RIGHT_COL; i++)
            mvaddch(BOT_ROW, LEFT_COL+i, H_LINE);
    }
Run Code Online (Sandbox Code Playgroud)

ETA:来自gdb的stacktrace:

#0 0xb778a139 in _nc_printf_string () from /lib/libncurses.so.5
#1 0xb7785e04 in vwprintw () from /lib/libncurses.so.5
#2 0xb7785f63 in printw () from /lib/libncruses.so.5
#3 0x08048f23 …
Run Code Online (Sandbox Code Playgroud)

c linux ncurses segmentation-fault

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