linux & windows porting


1. linux   int snprintf(char *restrict buf, size_t n, const char * restrict   format, ...);

windows  int _snprintf(

2. 头文件都是string. h
 windows平台:函数:stricmp(char *str1, char *str2), strnicmp(char *str1, char *str2, size_t n).
Linux平台: 函数:strcasecmp(char *str1, char *str2), strncasecmp(char *str1, char *str2, size_t n).

3. linux环境下是:vsnprintf
    VC6环境下是:_vsnprintf
   AString.cpp  linux vasprintf()

  1. static int vasprintf(char **strp, const char *fmt, va_list va)
  2. {
  3. const int required = vsnprintf(NULL, 0, fmt, va);
  4. char *const buffer = (char *) malloc(required + 1);
  5. const int ret = vsnprintf(buffer, required + 1, fmt, va);
  6. *strp = buffer;
  7. return ret;
  8. }

4. windows下winsock.h/winsock2.h
    linux下sys/socket.h    错误处理:errno.h

5. write windows头文件
  include unistd.h

6. socklen_t 
     windows 头文件 #include<ws2tcpip.h>
      linux   下头文件

1)#include <sys/socket.h>
      2)#include <unistd.h>

linux & windows porting

时间: 2024-10-06 00:41:11

linux & windows porting的相关文章

Linux Windows对NTFS移动盘的写入

一块西数1G的移动盘(2.5寸),厂家格式化为NTFS格式的文件系统.    最先挂到Windows 7机器上,拷入50G的文件,主要为MKV封装的电影和对应的字幕文件.刚开始拷速度很快,大约70M/秒,但是很快就降到32M/秒左右.拷贝完成后立即拔下,移动盘烫手.    后来挂到Ubuntu(版本14.04)下,也拷贝50G的视频文件,一开始的速度就在30M/秒的样子,很稳定.拷完立即拔盘,移动盘不热,甚至都不温.    这两台机器配置有差异,Windows 7更高,并且差别很大.如果想比较速

汉澳sinox为什么没有下载源,因为sinox运行unix/linux/windows程序

有用户下载使用汉澳sinox后说sinox没有下载源. 意思是说类似linux那样能下载linux 开源程序安装. 但是你要知道,sinox并不是linux. 首先,sinox是商业操作系统,就像 windows那样,你看到 windows有下载源吗? sinox不是开源操作系统,因此也就没有开源源代码和程序下载这种说法. 其次,sinox能运行bsd/unix/linux/windows程序,要做一个下载源那么该有多大?而且主要是支持商业软件开发,除了提供一些必要下载,大部分还是让其他软件公司

Linux (Windows Linux子系统)

Linux (Windows Linux子系统) 如果想体验Linux环境下开发和运行.NET Core应用,我们有多种选择.一种就是在一台物理机上安装原生的Linux,我们可以根据自身的喜好选择某种Linux Distribution,目前来说像RHEL.Ubuntu.Debian.Fedora.CentOS和SUSE这些主流的Distribution都是支持的.如果读者朋友们觉得这种方式比较麻烦,我们也可以采用虚拟机的形式安装相应的Linux Distribution,比如我经常使用的都是安

I.MX6 Linux udev porting

/*********************************************************************** * I.MX6 Linux udev porting * 声明: * 在嵌入式产品上,我们可以使用mdev来解决热插拔的问题,同时也经常看到 * udev,所以尝试来移植一下,但是最终发现她会丢失内核阶段产生的uevent, * 这导致无法生成内核阶段产生的设备节点,目前采用了mdev来做完成内核阶段的 * 设备节点生成,之后使用udev完成热插拔,这

DNS(linux windows)

DNS 案例一: 域名:abc.com dns服务器:192.168.2.100 www:1.1.1.1 ftp:2.2.2.2 mail:3.3.3.3 pop3 smtp MX ① 安装准备 mount /dev/cdrom /media/cdrom/ cd /media/cdrom/Packages/ ll bind* yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils cd /var

Linux&&Windows文件同步简单配置[rsync]

1.Windows to Windows 1.1.所需软件:cwRsyncServer_4.1.0_Installer.zip 1.2.安装: 解压后,直接双击安装 此步骤为设置同步的帐户和密码,该步骤会在操作系统层面创建一个用户:SvcCWRSYNC.当然,我们也可以修改这个用户,自己设置密码,都可以. 但是Windows下面可以不设置,全部默认即可. 1.3.配置服务端 编辑文件:rsyncd.conf use chroot = false strict modes = false host

端口转发(Linux/Windows)

[目的] 监听本机 7777 端口,将数据转发到 192.168.7.8 的 8888 端口,实现 TCP 数据转发. [方法] 1.ncat(Linux/Windows 通用)(ncat端口转发) ncat --sh-exec "ncat 192.168.7.8 8888" -l 7777 --keep-open 2.netsh(Windows)(port forwarding in windows) 2.1.设置 netsh interface portproxy add v4to

在Mac/Linux/Windows上编译corefx遇到的问题及解决方法

这两天尝试在Mac/Linux/Windows三大平台上编译.NET跨平台三驾马车(coreclr/corefx/dnx)之一的corefx(.NET Core Framework),结果三个平台的编译都失败了.后来一一都解决了,在这篇博文中分享一下. (一) 在Mac上编译corefx遇到的错误如下: /git/dotnet/corefx/dir.props(214,5): warning : The Roslyn targets do not exist- Roslyn will not b

samba linux windows 请联系管理员

在使用Samba进行建立Window与Linux共享时,要是不能访问,出现“您可能没有权限使用网络资源”, 那就是SELinux在作怪了 要是想让共享目录能访问,可以使用命令 #setenforce 0 暂时停掉SELinux 使用 #setenforce 1 启用SELinux 有关SELinux 在系统中的作用就不讲了,另外一种方法可以不用关闭SELinux.以下命令将允许这个权限: setsebool -P samba_enable_home_dirs=1 若SElinux啟用中,在Win