c语言常用函数大全 - 电脑技术中心 - 【漳州电脑网】_漳州电脑维修_漳州笔记本电脑维修_监控安装_市区上门维修

全国统一24小时服务热线:400-0000-000400-0000-000  / 1399000000

当前位置:首页 > 电脑技术中心 > 正文

c语言常用函数大全

发布日期:2018-04-25

摘要:  1、 MessageBoxA(0, "网络故障,重新登录 ", "qqerror ",3); 弹出对话框    2、 ShellExecuteA(0, "open ", "notepad ",0,0,6);...

  1、//MessageBoxA(0,"网络故障,重新登录","qqerror",3);//弹出对话框

  

  2、//ShellExecuteA(0,"open","notepad",0,0,6);//执行指令notepad可以指定网址

  

  

  

  3、//malloc(100000);//吃内存,铲食

  

  //Sleep(100);

  

  4、获取当前时间并打印

  

  方法一:

  

  SYSTEMTIMEtt;

  

  GetLocalTime(&tt);

  

  printf("%2d:%2d:%2d.%3d",tt.wHour,tt.wMinute,tt.wSecond,tt.wMilliseconds);

  

  方法二:

  

  time_ttt;

  

  //localtime(&tt);//此函数不行

  

  time(&tt);//获取当前系统的时间

  

  printf("Today'sdateandtime:%s\n",ctime(&tt));//把日期和时间转换为字符串

  

  方法三:

  

  time_ttimer=time(NULL);

  

  structtm*tblock=localtime(&timer);//把日期与时间转变为结构

  

  printf("Localtimeis:%s",asctime(tblock));//格式化时间

  

  

  

  5、转换日期和时间为ASCII码

  

  charstr[80];

  

  structtmt;

  

  t.tm_sec=1;

  

  t.tm_min=30;

  

  t.tm_hour=9;

  

  t.tm_mday=22;

  

  t.tm_mon=11;

  

  t.tm_year=56;

  

  t.tm_wday=4;

  

  t.tm_yday=0;

  

  t.tm_isdst=0;

  

  strcpy(str,asctime(&t));

  

  printf("%s\n",str);

  

  6、测试一个条件并可能使得程序终止

  

  #include<Windows.h>

  

  #include<stdlib.h>

  

  #include<stdio.h>

  

  #include<string.h>

  

  #include<time.h>

  

  #include<assert.h>

  

  

  

  structITEM

  

  {

  

  intkey;

  

  intvalue;

  

  };

  

  voidadditem(structITEM*itemptr)

  

  {

  

  assert(itemptr!=NULL);

  

  }

  

  intmain()

  

  {

  

  //structITEMit;

  

  //it.key=3;

  

  //it.value=4;

  

  additem(NULL);

  

  return0;//neverreachhere

  

  }

  

  程序执行后:(断言错误)

  

  

  

  7、把字符串转换为浮点数

  

  方法一:利用atof函数。类似的还有:atoiatoll;

  

  floatf=0;

  

  char*str="1234.5678";

  

  f=atof(str);

  

  printf("%f\n",f);

  

  方法二:利用sstream头文件转换。

  

  std::stringstr="1234.5678";

  

  //stringstreamss;

  

  //ss<<str;

  

  stringstreamss(str);

  

  doubledd=0;

  

  ss>>dd;

  

  printf("%lf\n",dd);

  

  8、分配主存储器

  

  char*str=NULL;

  

  str=(char*)calloc(10,sizeof(char));

  

  strcpy(str,"hello");

  

  puts(str);

  

  9、向上向下取整

  

  doublemm=123.54;

  

  doubledown=floor(mm);

  

  printf("%lf\n",down);//123.0000向下取整

  

  doubleup=ceil(mm);

  

  printf("%lf\n",up);//124.0000向上取整

  

  10、改变文件大小

  

  inthandle;

  

  charbuf[11]="0123456789";

  

  handle=open("DUMMY.FIL",O_CREAT);

  

  write(handle,buf,strlen(buf));

  

  chsize(handle,5);

  

  close(handle);

  

  11、确定时间

  

  clock_tstart,end;

  

  start=clock();

  

  Sleep(1000);

  

  end=clock();

  

  printf("%d\n",end-start);

  

  

  

  12、送格式化输出至屏幕

  

  cprintf("helloworld\r\n");

  

  

  

  13、终止程序

  

  exit(1);

  

  14、返回浮点数的绝对值

  

  fabs(f);==abs();

  

  15、检测流上的结束

  

  FILE*fp;

  

  fp=fopen("a.txt","r");

  

  fgetc(fp);

  

  if(feof(fp))//检测流上的文件结束符

  

  {

  

  printf("wehavereachedendoffile");

  

  }

  

  fclose(fp);

  

  16、清除一个流

  

  fflush();

  

  17、从流中读取字符

  

  fgetc()、fgetchar();

  

  18、传送格式化输出到一个流中

  

  Fprintf();一般作用于字节流而非二进制流。

  

  19、返回当前文件指针

  

  FILE*fp;

  

  fp=fopen("a.txt","w+");

  

  fprintf(fp,"thisisatest");

  

  printf("thefileptrisatbyte%ld\n",ftell(fp));//值为14

  

  fclose(fp);

  

  20、重定位流上的文件指针

  

  longfilesize(FILE*fp)

  

  {

  

  longcurpos,length;

  

  curpos=ftell(fp);

  

  fseek(fp,0L,SEEK_END);

  

  length=ftell(fp);

  

  fseek(fp,curpos,SEEK_SET);

  

  returnlength;

  

  }

  

  intmain()

  

  {

  

  FILE*fp;

  

  fp=fopen("a.txt","w+");

  

  fprintf(fp,"thisisatest");

  

  printf("filesizeofa.txtis%ldbytes\n",filesize(fp));

  

  fclose(fp);

  

  return0;

  

  }

  

  

  

  21、常见的函数有

  

  gets();从流中取一字符串

  

  intnumber=12345;

  

  charstr[25];

  

  itoa(number,str,10);//把一个整数转换为字符串

  

  printf("int:êo%d,string:êo%s",number,str);

  

  

  

  log();//对数函数

  

  

  

  22、内存分配函数

  

  Malloc();//申请内存

  

  Memcpy(void*destin,void*source,unsignedn);//从源中拷贝n个字节到目标中。

  

  23、移动一块字节

  

  chardest[]="ajdlajlgjalgjlajgafdlajgflajgljaljglajglajglajglaj";

  

  charsrc[]="******************************************";

  

  puts(dest);

  

  memmove(dest,src,sizeof(src));//将src移动到dest上输出就是上面的输出

  

  puts(dest);

  

  

  

  24、清零函数

  

  memset();

  

  指数函数pow(doublex,doubley);//x的y次方

  

  putch(intch);//输出字符到控制台

  

  putc(intch,file*stream);//输出字符到指定的流中

  

  puts(char*string);//送一字符串到流中

  

  25、随机数生成器

  

  两个函数的使用:srand(seed);rand();

  

  如果只用一个函数rand,则每次一开始产生的数字一样。没有随机数的意思。

  

  srand(time(NULL));

  

  printf("tenrandomnumbers0-99:\n");

  

  for(inti=0;i<10;++i)

  

  {

  

  printf("%d",rand()%100);

  

  }

  

  printf("\n");

  

  

  

  26、重新分配主存

  

  char*str=(char*)malloc(10*sizeof(char));

  

  chara[]="hello";

  

  memcpy(str,a,sizeof(a));

  

  printf("stringis%s\nAddressis%p\n",str,str);

  

  str=(char*)realloc(str,20*sizeof(char));

  

  printf("stringis%s\nAddressis%p\n",str,str);

  

  

  

  27、小函数

  

  睡眠函数sleep(unsignedseconds);

  

  送格式化输出到字符串intsprint(char*string,char*format[,argument,….]);

  

  charbuf[80];

  

  char*str="yujinli";

  

  sprintf(buf,"Ilove%s",str);

  

  puts(buf);

  

  

  

  计算平方根doublesqrt(doublex);

  

  28、关于激光字符串的处理函数

  

  串拷贝strcpy();

  

  charstr1[]="dfaljgalg";

  

  charstr2[20];

  

  strcpy(str2,str1);//这里str2不能为指针,不然会出错,最好是数组。

  

  puts(str2);

  

  串连接strcat();

  

  charstr1[30]="Ilove";

  

  charstr2[]="yujinli";

  

  strcat(str1,str2);//这里连接到str1后面,把str1数组搞大点,不能为str[],这样长度就不够了。

  

  puts(str1);

  

  串比较strcmp();

  

  返回三个值-1a<b0a=b1a>b

  

  charstr1[]="Iloveme";

  

  charstr2[]="Iloveme";

  

  intp=strcmp(str1,str2);

  

  printf("%d\n",p);

  

  

  

  在串中查找指定字符串的第一次出现

  

  char*str1="BorlandInternational",*str2="nation",*ptr;

  

  ptr=strstr(str1,str2);

  

  printf("Thesubstringis:%s\n",ptr);//输出:national

  

  

  

  将字符串转换为double型值doublestrtod(char*str,char**endptr);

  

  char*input="12345.6789",**endptr=NULL;

  

  doublevalue;

  

  value=strtod(input,endptr);

  

  printf("thestringis%sthenumberis%lf\n",input,value);

  

  类似的还有:longstrtol(char*str,char**endptr,intbase);//base==10,则转为为10进制数。将串转为长整型。

  

  发送一个dos命令:intsystem(char*str);

  

  交换字节:voidswab(char*from,char*to,intnbyte);

  

  charfrom[]="dlajglg";

  

  charto[20];

  

  swab(from,to,sizeof(from));

  

  puts(to);

  

  

  

  将串中小写转大写char*strupr(char*str);

  

  

  

  29、正切

  

  Doubletan(doublex);

  

  30、取一天的时间time();

  

  31、将字符转成大小写

  

  charstr[]="DJALJGLAJGALGJ";

  

  for(inti=0;i<strlen(str);++i)

  

  {

  

  str[i]=tolower(str[i]);

  

  }

  

  puts(str);

  

  for(inti=0;i<strlen(str);++i)

  

  {

  

  str[i]=toupper(str[i]);

  

  }

  

  puts(str);

  

  

  

  32、将一个无符号长整型转为字符串

  

  char*ultoa(unsignedlongvalue,char*string,intradix);//radix是进制的意思


上一篇:电脑老死机怎么办,电脑老死机解决方法

下一篇:7月29日前不升级 Windows 10就要收费了