• 大小: 1.09MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-11-03
  • 语言: 其他
  • 标签: glfw  opengl  c++  

资源简介

glfw 3.2.1 源码,使用cmake+vs自行编译

资源截图

代码片段和文件信息

/* Copyright (c) 2012 Kim Gräsman
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms with or without
 * modification are permitted provided that the following conditions are met:
 *  * Redistributions of source code must retain the above copyright notice
 *    this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright notice
 *    this list of conditions and the following disclaimer in the documentation
 *    and/or other materials provided with the distribution.
 *  * Neither the name of Kim Gräsman nor the names of contributors may be used
 *    to endorse or promote products derived from this software without specific
 *    prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS“
 * AND ANY EXPRESS OR IMPLIED WARRANTIES INCLUDING BUT NOT LIMITED TO THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL KIM GRÄSMAN BE LIABLE FOR ANY DIRECT
 * INDIRECT INCIDENTAL SPECIAL EXEMPLARY OR CONSEQUENTIAL DAMAGES
 * (INCLUDING BUT NOT LIMITED TO PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE DATA OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 * ON ANY THEORY OF LIABILITY WHETHER IN CONTRACT STRICT LIABILITY OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#include “getopt.h“

#include 
#include 

const int no_argument = 0;
const int required_argument = 1;
const int optional_argument = 2;

char* optarg;
int optopt;
/* The variable optind [...] shall be initialized to 1 by the system. */
int optind = 1;
int opterr;

static char* optcursor = NULL;

/* Implemented based on [1] and [2] for optional arguments.
   optopt is handled FreeBSD-style per [3].
   Other GNU and FreeBSD extensions are purely accidental.

[1] http://pubs.opengroup.org/onlinepubs/000095399/functions/getopt.html
[2] http://www.kernel.org/doc/man-pages/online/pages/man3/getopt.3.html
[3] http://www.freebsd.org/cgi/man.cgi?query=getopt&sektion=3&manpath=FreeBSD+9.0-RELEASE
*/
int getopt(int argc char* const argv[] const char* optstring) {
  int optchar = -1;
  const char* optdecl = NULL;

  optarg = NULL;
  opterr = 0;
  optopt = 0;

  /* Unspecified but we need it to avoid overrunning the argv bounds. */
  if (optind >= argc)
    goto no_more_optchars;

  /* If when getopt() is called argv[optind] is a null pointer getopt()
     shall return -1 without changing optind. */
  if (argv[optind] == NULL)
    goto no_more_optchars;

  /* If when getopt() is called *argv[optind]  is not the character ‘-‘
     getopt() shall return -1 without changing optind. */
  if (*argv[optind] != ‘-‘)
    goto no_more_optchars;

  /* If when getopt() is called argv[optind] points to the string “-“
     getopt() shall retu

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-08-18 11:52  glfw-3.2.1\
     文件         516  2016-08-18 11:32  glfw-3.2.1\.travis.yml
     目录           0  2016-08-18 11:32  glfw-3.2.1\include\
     目录           0  2016-08-18 11:32  glfw-3.2.1\include\GLFW\
     文件      152470  2016-08-18 11:32  glfw-3.2.1\include\GLFW\glfw3.h
     文件       13594  2016-08-18 11:32  glfw-3.2.1\include\GLFW\glfw3native.h
     文件         438  2016-08-18 11:32  glfw-3.2.1\.appveyor.yml
     文件         928  2016-08-18 11:32  glfw-3.2.1\COPYING.txt
     目录           0  2016-08-18 11:32  glfw-3.2.1\examples\
     文件       35737  2016-08-18 11:32  glfw-3.2.1\examples\particles.c
     文件        4812  2016-08-18 11:32  glfw-3.2.1\examples\simple.c
     文件          56  2016-08-18 11:32  glfw-3.2.1\examples\glfw.rc
     文件       21630  2016-08-18 11:32  glfw-3.2.1\examples\glfw.ico
     文件       16057  2016-08-18 11:32  glfw-3.2.1\examples\heightmap.c
     文件        2707  2016-08-18 11:32  glfw-3.2.1\examples\CMakeLists.txt
     文件        9817  2016-08-18 11:32  glfw-3.2.1\examples\gears.c
     文件       11842  2016-08-18 11:32  glfw-3.2.1\examples\wave.c
     文件       15176  2016-08-18 11:32  glfw-3.2.1\examples\splitview.c
     文件       19446  2016-08-18 11:32  glfw-3.2.1\examples\boing.c
     文件       27988  2016-08-18 11:32  glfw-3.2.1\examples\glfw.icns
     目录           0  2016-08-18 11:52  glfw-3.2.1\docs\
     文件       20353  2016-08-18 11:32  glfw-3.2.1\docs\moving.dox
     文件        6329  2016-08-18 11:32  glfw-3.2.1\docs\monitor.dox
     文件      111996  2016-08-18 11:32  glfw-3.2.1\docs\spaces.svg
     文件       11204  2016-08-18 11:32  glfw-3.2.1\docs\compile.dox
     文件        5935  2016-08-18 11:32  glfw-3.2.1\docs\DoxygenLayout.xml
     文件        8551  2016-08-18 11:32  glfw-3.2.1\docs\extra.less
     文件        7284  2016-08-18 11:32  glfw-3.2.1\docs\vulkan.dox
     文件       13780  2016-08-18 11:32  glfw-3.2.1\docs\build.dox
     文件        1417  2016-08-18 11:32  glfw-3.2.1\docs\header.html
     文件       12500  2016-08-18 11:32  glfw-3.2.1\docs\context.dox
............此处省略370个文件信息

评论

共有 条评论