+ -
当前位置:首页 → 问答吧 → 小白菜弱弱的问个C的问题

小白菜弱弱的问个C的问题

时间:2011-09-14

来源:互联网

请问各位:

1.ubuntu能使用gcd吗?

2.我编译时碰到如下问题:
cc lock_gcd.c -o test -ldispatch

lock_gcd.c: In function ‘main’:
lock_gcd.c:13:11: warning: assignment makes pointer from integer without a cast
lock_gcd.c:14:11: warning: assignment makes pointer from integer without a cast
lock_gcd.c:15:12: warning: assignment makes pointer from integer without a cast
lock_gcd.c:17:26: error: expected expression before ‘^’ token
lock_gcd.c:18:27: error: expected expression before ‘^’ token
lock_gcd.c:21:5: error: expected expression before ‘^’ token

我感觉是不认识^这个标示符,是不是我少引用了什么库?顺便问下,那个warning有办法去掉吗?

下面是我的源代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dispatch/dispatch.h>

int main(){

char buffer[256] = {0};

dispatch_queue_t child, parent;
dispatch_group_t group;

group = create_dispatch_group("group");
child = create_dispatch_queue("child");
parent = create_dispatch_queue("parent");

dispatch_sync(child, ^{ puts("child started, enter line:"); });
dispatch_sync(parent, ^{ gets(buffer, sizeof(buffer), stdin); });

dispatch_group_async(group, child,
^{
puts(buffer);
dispatch_sync(parent,
^{
puts("Press Enter");
char c = 0;
while('\n' != (c = getchar()));
});
});

dispatch_group_wait(group, DISPATCH_TIME_FOREVER);

dispatch_release(group);
dispatch_release(parent);
dispatch_release(child);

return EXIT_SUCCESS;
}

作者: michaellhq   发布时间: 2011-09-14