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

📄 038.htm

📁 一个好的讲DSP中C语言编程的电子书
💻 HTM
字号:
<HTML><HEAD><meta http-equiv="Content-Type" content="text/html; charset=GB2312"><TITLE>王大刚-->C语言编程宝典-->U</TITLE>
<META NAME="keywords" CONTENT="王大刚 C语言编程宝典 U">
<META NAME="description" CONTENT="王大刚 - C语言编程宝典 - U">

<style>
<!--
#page {position:absolute; z-index:0; left:0px; top:0px}
.tt3 {font: 9pt/12pt "宋体"}
.tt2 {font: 12pt/15pt "宋体"}
a {text-decoration:none}
a:hover {color: blue;text-decoration:underline}
-->
</style>
</HEAD>
<body text="#000000" aLink=#9900ff link=#006699 vLink=#006699 bgcolor="#FFFFFF" leftmargin="3" topmargin="3" marginheight="3" marginwidth="3">
<TABLE WIDTH="100%" CELLPADDING=10 CELLSPACING=0 BORDER=0>
<TR>
<TD CLASS="tt3" VALIGN="top" width="8%"  bgcolor="#e0e0e0"><strong><A HREF="039.htm">后一页</A><BR>
<A HREF="037.htm">前一页</A><BR>

<A HREF="index.html">回目录</A><BR>
<A HREF="../../../../index.htm">回首页</A><BR>
</strong>
</TD>
<TD class="tt2" bgcolor="#F5F8F8" width="84%"><center><B><FONT style="FONT-SIZE: 16.5pt" COLOR="#FF6666" FACE="楷体_GB2312">U</FONT></B></center>
<hr color="#EE9B73" size="1" width="94%">
<BR>
<P>函数名: ultoa
<BR>功&nbsp; 能: 转换一个无符号长整型数为字符串
<BR>用&nbsp; 法: char *ultoa(unsigned long value, char *string, int radix);
<BR>程序例:
<BR>
<P>#include &lt;stdlib.h>
<BR>#include &lt;stdio.h>
<BR>
<P>int main( void )
<BR>{
<BR>&nbsp;&nbsp; unsigned long lnumber = 3123456789L;
<BR>&nbsp;&nbsp; char string[25];
<BR>
<P>&nbsp;&nbsp; ultoa(lnumber,string,10);
<BR>&nbsp;&nbsp; printf("string = %s&nbsp; unsigned long = %lu\n",string,lnumber);
<BR>
<P>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>
<P>函数名: ungetc
<BR>功&nbsp; 能: 把一个字符退回到输入流中
<BR>用&nbsp; 法: int ungetc(char c, FILE *stream);
<BR>程序例:
<BR>
<P>#include &lt;stdio.h>
<BR>#include &lt;ctype.h>
<BR>
<P>int main( void )
<BR>{
<BR>&nbsp;&nbsp; int i=0;
<BR>&nbsp;&nbsp; char ch;
<BR>
<P>&nbsp;&nbsp; puts("Input an integer followed by a char:");
<BR>
<P>&nbsp;&nbsp; /* read chars until non digit or EOF */
<BR>&nbsp;&nbsp; while((ch = getchar()) != EOF &amp;&amp; isdigit(ch))
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; i = 10 * i + ch - 48; /* convert ASCII
into int value */
<BR>
<P>&nbsp;&nbsp; /* if non digit char was read, push it back into input
buffer */
<BR>&nbsp;&nbsp; if (ch != EOF)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ungetc(ch, stdin);
<BR>
<P>&nbsp;&nbsp; printf("i = %d, next char in buffer = %c\n", i, getchar());
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>
<P>函数名: ungetch
<BR>功&nbsp; 能: 把一个字符退回到键盘缓冲区中
<BR>用&nbsp; 法: int ungetch(int c);
<BR>程序例:
<BR>
<P>#include &lt;stdio.h>
<BR>#include &lt;ctype.h>
<BR>#include &lt;conio.h>
<BR>
<P>int main( void )
<BR>{
<BR>&nbsp;&nbsp; int i=0;
<BR>&nbsp;&nbsp; char ch;
<BR>
<P>&nbsp;&nbsp; puts("Input an integer followed by a char:");
<BR>
<P>&nbsp;&nbsp; /* read chars until non digit or EOF */
<BR>&nbsp;&nbsp; while((ch = getche()) != EOF &amp;&amp; isdigit(ch))
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; i = 10 * i + ch - 48; /* convert ASCII
into int value */
<BR>
<P>&nbsp;&nbsp; /* if non digit char was read, push it back into input
buffer */
<BR>&nbsp;&nbsp; if (ch != EOF)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ungetch(ch);
<BR>
<P>&nbsp;&nbsp; printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>
<P>函数名: unixtodos
<BR>功&nbsp; 能: 把日期和时间转换成DOS格式
<BR>用&nbsp; 法: void unixtodos(long utime, struct date *dateptr,
<BR>&nbsp;&nbsp; struct time *timeptr);
<BR>程序例:
<BR>
<P>#include &lt;stdio.h>
<BR>#include &lt;dos.h>
<BR>
<P>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
<BR>
<P>#define SECONDS_PER_DAY 86400L&nbsp; /* the number of seconds in one
day */
<BR>
<P>struct date dt;
<BR>struct time tm;
<BR>
<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; unsigned long val;
<BR>
<P>/* get today's date and time */
<BR>&nbsp;&nbsp; getdate(&amp;dt);
<BR>&nbsp;&nbsp; gettime(&amp;tm);
<BR>&nbsp;&nbsp; printf("today is %d %s %d\n", dt.da_day, month[dt.da_mon],
dt.da_year);
<BR>
<P>/* convert date and time to unix format (number of seconds since Jan
1, 1970 */
<BR>&nbsp;&nbsp; val = dostounix(&amp;dt, &amp;tm);
<BR>/* subtract 42 days worth of seconds */
<BR>&nbsp;&nbsp; val -= (SECONDS_PER_DAY * 42);
<BR>
<P>/* convert back to dos time and date */
<BR>&nbsp;&nbsp; unixtodos(val, &amp;dt, &amp;tm);
<BR>&nbsp;&nbsp; printf("42 days ago it was %d %s %d\n",
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dt.da_day, month[dt.da_mon],
dt.da_year);
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>
<P>函数名: unlink
<BR>功&nbsp; 能: 删掉一个文件
<BR>用&nbsp; 法: int unlink(char *filename);
<BR>程序例:
<BR>
<P>#include &lt;stdio.h>
<BR>#include &lt;io.h>
<BR>
<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; FILE *fp = fopen("junk.jnk","w");
<BR>&nbsp;&nbsp; int status;
<BR>
<P>&nbsp;&nbsp; fprintf(fp,"junk");
<BR>
<P>&nbsp;&nbsp; status = access("junk.jnk",0);
<BR>&nbsp;&nbsp; if (status == 0)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("File exists\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("File doesn't exist\n");
<BR>
<P>&nbsp;&nbsp; fclose(fp);
<BR>&nbsp;&nbsp; unlink("junk.jnk");
<BR>&nbsp;&nbsp; status = access("junk.jnk",0);
<BR>&nbsp;&nbsp; if (status == 0)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("File exists\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("File doesn't exist\n");
<BR>&nbsp;
<BR>
<P>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>
<P>函数名: unlock
<BR>功&nbsp; 能: 解除文件共享锁
<BR>用&nbsp; 法: int unlock(int handle, long offset, long length);
<BR>程序例:
<BR>
<P>#include &lt;io.h>
<BR>#include &lt;fcntl.h>
<BR>#include &lt;sys\stat.h>
<BR>#include &lt;process.h>
<BR>#include &lt;share.h>
<BR>#include &lt;stdio.h>
<BR>
<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; int handle, status;
<BR>&nbsp;&nbsp; long length;
<BR>
<P>&nbsp;&nbsp; handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD);
<BR>
<P>&nbsp;&nbsp; if (handle &lt; 0)
<BR>&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("sopen failed\n");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit(1);
<BR>&nbsp;&nbsp; }
<BR>
<P>&nbsp;&nbsp; length = filelength(handle);
<BR>&nbsp;&nbsp; status = lock(handle,0L,length/2);
<BR>
<P>&nbsp;&nbsp; if (status == 0)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("lock succeeded\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("lock failed\n");
<BR>
<P>&nbsp;&nbsp; status = unlock(handle,0L,length/2);
<BR>
<P>&nbsp;&nbsp; if (status == 0)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("unlock succeeded\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("unlock failed\n");
<BR>
<P>&nbsp;&nbsp; close(handle);
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>
<hr color="#EE9B73" size="1" width="94%">

</TD>
<TD CLASS="tt3" VALIGN="bottom" width="8%"  bgcolor="#e0e0e0"><strong><A HREF="039.htm">后一页</A><BR>
<A HREF="037.htm">前一页</A><BR>

<A HREF="index.html">回目录</A><BR>
<A HREF="../../../../index.htm">回首页</A><BR>
</strong>
</TD>
</TR>
</table>
</BODY></HTML>

⌨️ 快捷键说明

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