C/C++——小编谈C语言函数那些事(13)

 

C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。

1.       malloc函数

malloc函数的功能是内存分配函数,其用法为:void *malloc(unsigned size);程序实例如下:

#include <stdio.h>

#include <string.h>

#include <alloc.h>

#include <process.h>

int main(void)

{

   char *str;

      if ((str = malloc(10)) == NULL)

   {

      printf("Not enough memory to allocate buffer/n");

      exit(1);  /* terminate program if out of memory */

   }

    strcpy(str, "Hello");

    printf("String is %s/n", str);

    free(str);

    return 0;

}

 

2.      memchr函数

memchr函数的功能是在数组的前n个字节中搜索字符,其用法为:void *memchr(void *s, char ch, unsigned n);  程序实例代码如下:

#include <string.h>

#include <stdio.h>

int main(void)

{

   char str[17];

   char *ptr;

   strcpy(str, "This is a string");

   ptr = memchr(str, 'r', strlen(str));

   if (ptr)

      printf("The character 'r' is at position: %d/n", ptr - str);

   else

      printf("The character was not found/n");

   return 0;

}

3.      memicmp函数

memicmp函数的功能是比较两个串s1s2的前n个字节, 忽略大小写,其用法为:int memicmp(void *s1, void *s2, unsigned n);程序实例代码如下:

#include <stdio.h>

#include <string.h>

int main(void)

{

   char *buf1 = "ABCDE123";

   char *buf2 = "abcde456";

   int stat;

   stat = memicmp(buf1, buf2, 5);

   printf("The strings to position 5 are ");

   if (stat)

   printf("not ");

   printf("the same/n");

   return 0;

}

4.       MK_FP函数

MK_FP函数的功能是设置一个远指针,其用法为:void far *MK_FP(unsigned seg, unsigned off); 程序实例代码如下:

#include <dos.h>

#include <graphics.h>

int main(void)

{

   int gd, gm, i;

   unsigned int far *screen;

   detectgraph(&gd, &gm);

   if (gd == HERCMONO)

       screen = MK_FP(0xB000, 0);

   else

       screen = MK_FP(0xB800, 0);

   for (i=0; i<26; i++)

      screen[i] = 0x0700 + ('a' + i);

   return 0;

}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值