⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 revcomp.c

📁 hmmer源程序
💻 C
字号:
/***************************************************************** * HMMER - Biological sequence analysis with profile HMMs * Copyright (C) 1992-1999 Washington University School of Medicine * All Rights Reserved *  *     This source code is distributed under the terms of the *     GNU General Public License. See the files COPYING and LICENSE *     for details. *****************************************************************//* revcomp.c *  * Reverse complement of a IUPAC character string * RCS $Id: revcomp.c,v 1.3 1999/05/02 21:53:38 eddy Exp $ */#include <stdio.h>#include <string.h>#include <ctype.h>#include "squid.h"#ifdef MEMDEBUG#include "dbmalloc.h"#endifchar *revcomp(char *comp, char *seq){  long  bases;  char *bckp, *fwdp;  int   idx;  long  pos;  int   c;  if (comp == NULL) return NULL;  if (seq == NULL)  return NULL;  bases = strlen(seq);  fwdp = comp;  bckp = seq + bases -1;  for (pos = 0; pos < bases; pos++)    {      c = *bckp;      c = sre_toupper(c);      for (idx = 0; c != iupac[idx].sym && idx < IUPACSYMNUM; idx++);      if (idx == IUPACSYMNUM)	{	  Warn("Can't reverse complement an %c, pal. Using N.", c);	  *fwdp = 'N';	}      else	*fwdp = iupac[idx].symcomp;      if (islower((int) *bckp)) *fwdp = (char) sre_tolower((int) *fwdp);      fwdp++;      bckp--;    }  *fwdp = '\0';  return comp;}  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -