当前位置: 技术问答>linux和unix
linux 下编译C的问题,请高手看一下是什么原因
来源: 互联网 发布时间:2016-03-03
本文导语: #include #include #include #include #include static int num=0; static char namebuf[20]; static char prefix[]="/tmp/tmp"; /* itoa 把整型转换成字符串 */ void itoa( int i,char* string) { int power, j; j=i; for (power=1;j>=10;j/=10) power*=10; for (;po...
#include
#include
#include
#include
#include
static int num=0;
static char namebuf[20];
static char prefix[]="/tmp/tmp";
/* itoa 把整型转换成字符串 */
void itoa( int i,char* string)
{
int power, j;
j=i;
for (power=1;j>=10;j/=10)
power*=10;
for (;power>0;power/=10) {
*string++='0'+i/power;
i%=power;
}
*string='';
}
char* gentemp()
{
int length,pid;
pid=getpid();
strcpy(namebuf,prefix);
length=strlen(namebuf);
/* 在文件名中增加pid 部分 */
itoa(pid,&namebuf[length]);
strcat(namebuf,".");
length=strlen(namebuf);
do{
/* 增加后缀number */
itoa(num++,&namebuf[length]);
sprintf(&namebuf[length],"%d",num++);
} while (access(namebuf,0)!=-1);
return namebuf;
}
[root@zouxd network]# make
gcc page39.cpp -o page39
/usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../../crt1.o(.text+0x18): In function `_start':
../sysdeps/i386/elf/start.S:77: undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [page39] Error 1
[root@zouxd network]#
#include
#include
#include
#include
static int num=0;
static char namebuf[20];
static char prefix[]="/tmp/tmp";
/* itoa 把整型转换成字符串 */
void itoa( int i,char* string)
{
int power, j;
j=i;
for (power=1;j>=10;j/=10)
power*=10;
for (;power>0;power/=10) {
*string++='0'+i/power;
i%=power;
}
*string='';
}
char* gentemp()
{
int length,pid;
pid=getpid();
strcpy(namebuf,prefix);
length=strlen(namebuf);
/* 在文件名中增加pid 部分 */
itoa(pid,&namebuf[length]);
strcat(namebuf,".");
length=strlen(namebuf);
do{
/* 增加后缀number */
itoa(num++,&namebuf[length]);
sprintf(&namebuf[length],"%d",num++);
} while (access(namebuf,0)!=-1);
return namebuf;
}
[root@zouxd network]# make
gcc page39.cpp -o page39
/usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../../crt1.o(.text+0x18): In function `_start':
../sysdeps/i386/elf/start.S:77: undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [page39] Error 1
[root@zouxd network]#
|
../sysdeps/i386/elf/start.S:77: undefined reference to `main'
有main函数吗?
有main函数吗?
|
若你要写的是一个可执行的程序,就必须要有main函数,
若你想实现一个单独的函数模块,编译的时候要带参数-c,那么编译出来就是一个待连接的目标文件
试试这样写:
gcc page39.cpp -c -o page39.o
若你想实现一个单独的函数模块,编译的时候要带参数-c,那么编译出来就是一个待连接的目标文件
试试这样写:
gcc page39.cpp -c -o page39.o