#include<stdio.h>
main()
{
float x=2;
float y=4;
printf("\n%d\n%f",x/y,x/y);
printf("\n%f\n%d",x/y,x/y);
}
Run Code Online (Sandbox Code Playgroud)
输出:
0
0.000000
0.500000
0
Run Code Online (Sandbox Code Playgroud)
用gcc编译4.4.3程序退出时出错,代码为12
什么是错strcpy()
的代码?
void process_filedata(char *filename)
{
void* content;
const char * buffer;
char * temp;
char * row;
char * col;
int lsize,buflen,tmp,num_scan; //num_scan - number of characters scanned
int m=0,p=0,d=0,j=0; //m - machine, p - phase, d- delimiter, j - job
FILE *file_pointer = fopen("machinetimesnew.csv","r");
if(file_pointer == NULL)
{
error_flag = print_error("Error opening file");
if(error_flag) exit(1);
}
fseek(file_pointer, 0 ,SEEK_END);
lsize = ftell(file_pointer);
buflen = lsize;
rewind(file_pointer);
// content = (char*) malloc(sizeof(char)*lsize);
fread(content,1,lsize,file_pointer);
buffer = (const char*) content; …
Run Code Online (Sandbox Code Playgroud) typedef struct queue {
int q[max];
int qhead;
int qrear;
} queue;
void init_queue(queue *QUEUE)
{
QUEUE.qhead = 0;
QUEUE.qrear = -1;
}
void enqueue(queue *QUEUE,int data)
{
QUEUE.qrear++;
QUEUE.q[QUEUE.qrear] = data;
}
int process_queue(queue *QUEUE)
{
if(QUEUE.qhead > QUEUE.qrear)
return -1;
else
return QUEUE.q[QUEUE.qhead++];
}
Run Code Online (Sandbox Code Playgroud)
我正在使用数组实现队列只是为了保持简单.用上面的代码搞错了?
程序接收信号SIGSEGV,分段故障.execute_jobs()中的0x08049795当前语言:auto; 目前asm
(gdb)信息符号0x08049795 execute_jobs + 22 in section .text
(gdb)ptype 0x08049795 type = int
如何获取发生错误的行号?