I need help with ftell function in my programme, I can't figure out why I am not getting the file position what I supposed to get
Here is my code
Code:
void read_line(void *fh, double *input_re, double *input_im){
double a, b;
char s[50];
int n;
int i=0;
if ( fgets(s, sizeof(s), fh) != NULL){
i= ftello(fh);
}
printf("FILE Current Pos: %d\n ", i);
printf("IMP: %s ", s);
sscanf(s,"%lf %lf",&a,&b);
*input_re = a;
*input_im = b;
}
else{
rewind(fh);
}
}
I am calling the above function to read line from a file, assume that the file pointer is always in open mode to read from that file.
But My output is strange . The below is the begining of my output . but not the end..
Code:
FILE Current Pos: 20
IMP: 0.137667 0.0595724
FILE Current Pos: 39
IMP: 0.102683 0.109343
FILE Current Pos: 59
IMP: 0.0508147 0.141131
FILE Current Pos: 81
IMP: -0.00941674 0.149706
FILE Current Pos: 102
IMP: -0.0681001 0.133655
FILE Current Pos: 121
IMP: -0.115576 0.09561
FILE Current Pos: 142
IMP: -0.144043 0.0418468
FILE Current Pos: 164
IMP: -0.148821 -0.0187982
FILE Current Pos: 186
IMP: -0.129114 -0.0763566
FILE Current Pos: 208
IMP: -0.0881689 -0.121354
FILE Current Pos: 228
IMP: -0.03272 -0.146388
FILE Current Pos: 249
IMP: 0.0281091 -0.147345
While the first data is matching with the first line of my input file, but the Current position seems to be 20 , which should be 1 in my case. then next position should be 2 , but as I shown the next one is 39.
Please help me what to do to work the ftell() correctly..
I need help with ftell function in my programme, I can't figure out why I am not getting the file position what I supposed to get
Here is my code
Code:
void read_line(void *fh, double *input_re, double *input_im){
double a, b;
char s[50];
int n;
int i=0;
if ( fgets(s, sizeof(s), fh) != NULL){
i= ftello(fh);
}
printf("FILE Current Pos: %d\n ", i);
printf("IMP: %s ", s);
sscanf(s,"%lf %lf",&a,&b);
*input_re = a;
*input_im = b;
}
else{
rewind(fh);
}
}
I am calling the above function to read line from a file, assume that the file pointer is always in open mode to read from that file.
But My output is strange . The below is the begining of my output . but not the end..
Code:
FILE Current Pos: 20
IMP: 0.137667 0.0595724
FILE Current Pos: 39
IMP: 0.102683 0.109343
FILE Current Pos: 59
IMP: 0.0508147 0.141131
FILE Current Pos: 81
IMP: -0.00941674 0.149706
FILE Current Pos: 102
IMP: -0.0681001 0.133655
FILE Current Pos: 121
IMP: -0.115576 0.09561
FILE Current Pos: 142
IMP: -0.144043 0.0418468
FILE Current Pos: 164
IMP: -0.148821 -0.0187982
FILE Current Pos: 186
IMP: -0.129114 -0.0763566
FILE Current Pos: 208
IMP: -0.0881689 -0.121354
FILE Current Pos: 228
IMP: -0.03272 -0.146388
FILE Current Pos: 249
IMP: 0.0281091 -0.147345
While the first data is matching with the first line of my input file, but the Current position seems to be 20 , which should be 1 in my case. then next position should be 2 , but as I shown the next one is 39.
Please help me what to do to work the ftell() correctly..
I think ftell()function tells me the current curson postion , but I need the current line no. How to find the current line no , i guess NR do this jon in awk .But how to do it in c .
I need help with ftell function in my programme, I can't figure out why I am not getting the file position what I supposed to get
Here is my code
Code:
void read_line(void *fh, double *input_re, double *input_im){
double a, b;
char s[50];
int n;
int i=0;
if ( fgets(s, sizeof(s), fh) != NULL){
i= ftello(fh);
}
printf("FILE Current Pos: %d\n ", i);
printf("IMP: %s ", s);
sscanf(s,"%lf %lf",&a,&b);
*input_re = a;
*input_im = b;
}
else{
rewind(fh);
}
}
I am calling the above function to read line from a file, assume that the file pointer is always in open mode to read from that file.
But My output is strange . The below is the begining of my output . but not the end..
Code:
FILE Current Pos: 20
IMP: 0.137667 0.0595724
FILE Current Pos: 39
IMP: 0.102683 0.109343
FILE Current Pos: 59
IMP: 0.0508147 0.141131
FILE Current Pos: 81
IMP: -0.00941674 0.149706
FILE Current Pos: 102
IMP: -0.0681001 0.133655
FILE Current Pos: 121
IMP: -0.115576 0.09561
FILE Current Pos: 142
IMP: -0.144043 0.0418468
FILE Current Pos: 164
IMP: -0.148821 -0.0187982
FILE Current Pos: 186
IMP: -0.129114 -0.0763566
FILE Current Pos: 208
IMP: -0.0881689 -0.121354
FILE Current Pos: 228
IMP: -0.03272 -0.146388
FILE Current Pos: 249
IMP: 0.0281091 -0.147345
While the first data is matching with the first line of my input file, but the Current position seems to be 20 , which should be 1 in my case. then next position should be 2 , but as I shown the next one is 39.
Please help me what to do to work the ftell() correctly..
I think ftell()function tells me the current curson postion , but I need the current line no. How to find the current line no , i guess NR do this jon in awk .But how to do it in c .
Hi All,
Good Day, seeking for your assistance on how to not perform my 2nd, 3rd,4th etc.. function if my 1st function is in else condition.
#Body
function1()
{
if
then
echo "exist"
else
echo "not exist"
}
#if not exist in function1 my all other function will not proceed.... (4 Replies)
Hi,
I am having script which contains many functions. Need to print each function name at the starting of the function. Like below,
functionname()
{
echo "functionname"
commands....
}
I've tried like below,
func=`grep "()" scriptname | cut -d "(" -f1`
for i in $func
do
nawk -v... (4 Replies)
Dear All.
I have a script, which process files one by one. In the script I have two functions.
one sftp files to different server
the other from existing file create file with different name.
My question is:
Will sftp function recognize files names , which are created in another... (1 Reply)
I have a script which does gunzip, zip and untar.
Input to the script is file name and file directory (where file is located)
I am reading the input parameters as follows:
FILENAME=$1
FILEDIR=$2
I have created 3 functions that are as follows:
1) gunzip file
2) unzip file... (2 Replies)
In gdb, I can call one function with command "call", but how can I step in the function? I don't want to restart the program, but the function had been executed, gdb will execute next statement, and I don't know how to recall the function. (4 Replies)
This is my function which is creating three variables based on counter & writing these variable to database by calling another function writeRecord
but only one record is getting wrote in DB.... Please advise ASAP...:confused:
function InsertFtg
{
FTGSTR=""
echo "Saurabh is GREAT $#"
let... (2 Replies)
Hi.
Problem: I have to parse the payload of a packet. The payload could be in Big Endian Format (network byte order) or little. That depends on a flag present in the header of the packet.
Solution: A horrible solution could be to check for that flag everytime I have to read a field in the... (11 Replies)
In determining the true file size of a .tga file is the
fseek(fptr,0,SEEK_END);
file_size = ftell(fptr);
combination reliable ? The reason Im asking is because the value of file_size is in agreement with doing a
wc -c mytga.tga
however when I get the value of the extension... (2 Replies)
Hi ,
I have three funcions f1, f2 and f3 .
f1 calls f2 and f2 calls f3 .
I have a global variable "period" which i want to pass to f3 .
Can i pass the variable directly in the definition of f3 ?
Pls help .
sars (4 Replies)