Closed. This question needs details or clarity。它当前不接受答案。
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
4年前关闭。
假设我有myname.c,将其编译为获取可执行文件myname。
我想在命令后打印操作系统名称:
$ myname-系统名称
输出:Linux
这是我到目前为止的
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
4年前关闭。
假设我有myname.c,将其编译为获取可执行文件myname。
我想在命令后打印操作系统名称:
$ myname-系统名称
输出:Linux
这是我到目前为止的
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <sys/utsname.h>
int main(int argc, char **argv) {
struct utsname buffer;
char str[70];
scanf("%[^\n]",str);
if (uname(&buffer) == system-name){
printf(
"%s",
(&buffer)->sysname,
);
}
最佳答案
我认为这应该工作(您的缓冲区不是指针,并且if语句不是明智的,并且您还应该在该声明方法中从main返回某些内容):
#include <stdio.h>
#include <stdlib.h>
#include <sys/utsname.h>
int main(int argc, char **argv) {
struct utsname uts;
if(uname(&uts) !=0 ) {
return EXIT_FAILURE;
}
printf("%s\n",uts.sysname);
return EXIT_SUCCESS;
}
关于c - 用C打印系统名称? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35095887/
10-11 15:42