扬声器

发表于:2007-05-25来源:作者:点击数: 标签:扬声器sound.cctype#includeCat
# cat sound.c #include ctype.h main() { char yn='y'; while (toupper(yn) != 'N') { sound (1000); delay (10*1000); nosound (); scanf(%c\n,yn); } } linux# gcc -c sound.c linux# gcc sound.c /tmp/ccY1CnnA.o: In function `main': /tmp/ccY1CnnA.o(
# cat sound.c
#include "ctype.h"
main()
{
char yn='y';
while (toupper(yn) != 'N')
{
sound (1000);
delay (10*1000);
nosound ();
scanf("%c\n",&yn);
}
}

linux# gcc -c sound.c
linux# gcc sound.c
/tmp/ccY1CnnA.o: In function `main':
/tmp/ccY1CnnA.o(.text+0x34): undefined reference to `sound'
/tmp/ccY1CnnA.o(.text+0x44): undefined reference to `delay'
/tmp/ccY1CnnA.o(.text+0x4c): undefined reference to `nosound'
collect2: ld returned 1 exit status

不会是 :sk不懂,请大家帮帮忙,谢谢

undefined reference to xxx
表示

某个函数的定义没有找到
无法连接
你的sound、delay、nosound函数从哪来的?
另外,include标准库的时候最好用尖括号(大于、小于号」
#include <ctype.h>
是扬声器吗?
参考一下:
http://www.fanqiang.com/a4/b8/20010809/1200011095.html
代码:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <linux/kd.h>

int
main()
{ 
  int fd;
  int freq = 1000;
  int delay = 2000000; /* 2秒 */

  if((fd = open("/dev/console", O_WRONLY)) < 0){
    fprintf(stderr, "cannot open /dev/console\n");
    exit(-1);
  }
  ioctl(fd, KIOCSOUND, 1190000 / freq);
  usleep(delay);
  ioctl(fd, KIOCSOUND, 0);

  exit(0);
}

原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)