关于 warning: assignment makes pointer from integer without a cast

#include <string.h>
#include <stropts.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdlib.h>
#include <stdio.h>

char *ptsname(int);//此句不加就会产生开头warn,但是stdlib头文件中是有声明的。。。

int
main(int argc, char *argv[])
{
	char		*ptr;
	int			fdm;

	fdm = open("/dev/ptmx", O_RDWR);
	grantpt(fdm);
	unlockpt(fdm);
	if ((ptr = ptsname(fdm)) == NULL) {
		printf("err\n");
		exit(1);
	}

	puts(ptr);
	printf("%d\n", fdm);
}

关于这个警告是因为没有声明,没有声明的函数返回类型都是int

你可能感兴趣的:(关于 warning: assignment makes pointer from integer without a cast)