内容简介:自己写一个简单的uname, 要用到utsname结构体, 编译报错如下:.. code:: c查实一下, 是因为用错了操作符:
自己写一个简单的uname, 要用到utsname结构体, 编译报错如下:
.. code:: c
uname.c: In function ‘main’: uname.c:8:42: error: invalid type argument of ‘->’ (have ‘struct utsname’) printf("%s - %s - %s - %s - %s\n", name->sysname, name->nodename,\ ^
查实一下, 是因为用错了操作符:
- -> 的左侧必须是指针.
- . 的左侧必须是结构体实体.
程序如下:
.. code:: c
$ cat -n uname.c 1 #include <sys/utsname.h> 2 #include <stdio.h> 3 4 int main(void) 5 { 6 struct utsname name; 7 printf("%d\n", uname(&name)); 8 printf("%s - %s - %s - %s - %s\n", name.sysname, name.nodename,\ 9 name.release, name.version, name.machine); 10 return 0; 11 }
2014-09-21: ~~~~~~~~~~~
(摘自《征服c指针》-前桥和弥):
| p->hoge; | 是 | (*p).hoge; | 的语法糖.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- JavaScript骚操作之操作符
- Android RxJava 操作符详解系列:条件 / 布尔操作符
- JS操作符拾遗
- 浅谈JavaScript位操作符
- rxjs switchMap操作符
- TypeScript keyof 操作符
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。