is dangerous in many ways, doesn't do precisely what you want(%s stops at first whitespace) and has no good options for error-checking.
A solid understanding of the functions fscanf(), sscanf(), fgets() is needed to use them properly. Use fgets and sscanf like I keep telling youI was trying to understand why, and before that, I need catch how "flow of the data" (sometime I think it as stream) was read into memory, or handled by the program. RS/FS was borrowed to show my understanding as awk handle formatted data with these two VAR, which is not appropriate here apparently. So many options, I need understand the right choice. This part is hard at my first sight to Read three lines into the same buffer
Code:
// Read three lines into the same buffer.
if(!fgets(buf, 4096-bpos, stdin)) break; //To help my understanding, can I do this, as bpos is set 0 before the loop?
bpos = strlen(buf); // could be more efficient but you get the idea
if(!fgets(buf+bpos, 4096-bpos, stdin)) break;
bpos = strlen(buf);
if(!fgets(buf+bpos, 4096-bpos, stdin)) break;
Hi,
I have a data file formatted like this:
Ex:
Mike 3434
Jack 481
Peter 12
Alan 926
I want to get this data into 2 variables: "Names" and "Numbers" that I can using one "for" loop to get the value as Names and Numbers
Like this:
for i in 0 1 2 3
do
echo $Names
echo... (12 Replies)
I have 3 columns in an excel sheet.
c1 c2 c3
EIP_ACCOUNT SMALL_TS_01 select A.* from acc;
All the above 3 col shoud be passed a variable in the unix code.
1.How to read an excel file
2.How to pass these data as variable to the unic script (1 Reply)
I am trying to write binary data to a file. My program below:
#include <stdlib.h>
#include <stdio.h>
struct tinner {
int j;
int k;
};
struct touter {
int i;
struct tinner *inner;
};
int main() {
struct touter data;
data.i = 10;
struct tinner... (4 Replies)
Can someone tell me how to do this?
Just a thought that entered my mind when learning about structs.
First thought was:
struct one
{
struct two;
}
struct two
{
three;
}
one->two->three
would this be how you would access "three"? (1 Reply)
Hello,
I have a log file for the year, which contains lines starting with the data in the format of YYYY-MM-DD. I need to get all the lines that contain the DD being 04, how would I do this? I tried using grep "*-*04" but it didn't work.
Any quick one liners I should know about?
Thank you. (2 Replies)
Hi,
I am trying to fetch sysname and nodename using struct utsname. I have two HP-UX servers on with 10 characters and other with 13 characters host name. For the first one I am getting truncated 8 characters as output but for the second one i am getting "Value too large to be stored in data type"... (1 Reply)
Hi,
I have received an application that stores some properties in a file. The existing struct looks like this:
struct TData
{
UINT uSizeIncludingStrings;
// copy of Telnet data struct
UINT uSize;
// basic properties:
TCHAR szHost; //defined in Sshconfig
UINT iPortNr;
TCHAR... (2 Replies)
I have this input.|user1 |10.10.10.10 |23|046|1726 (212) |0
|user2 |10.10.10.11 |23|046|43 (17) |0
|test |10.10.10.12 |23|046|45 (10) |0
|test1 |10.10.10.13 |23|046|89 (32) |0
I need to get the data for a user like thisuser1 1726
user2 43
test 45
test1 89... (11 Replies)
Hi,
I have below data in my flat file.I would like to remove the quotes and comma necessary from the data.Below is the details I would like to have in my output.
Could anybody help me providing the Unix shell script for this.
Input :
ABC,ABC,10/15/2012,"47,936,164.567 ","1,036,997.453... (2 Replies)
We have the data looks like below in a log file.
I want to generat files based on the string between two hash(#) symbol like below
Source:
#ext1#test1.tale2 drop
#ext1#test11.tale21 drop
#ext1#test123.tale21 drop
#ext2#test1.tale21 drop
#ext2#test12.tale21 drop
#ext3#test11.tale21 drop... (5 Replies)
Discussion started by: Sanjeev G
5 Replies
LEARN ABOUT DEBIAN
explain_fgets_or_die
explain_fgets_or_die(3) Library Functions Manual explain_fgets_or_die(3)NAME
explain_fgets_or_die - input of strings and report errors
SYNOPSIS
#include <libexplain/fgets.h>
char *explain_fgets_or_die(char *data, int data_size, FILE *fp);
DESCRIPTION
The explain_fgets_or_die function is used to call the fgets(3) system call. On failure an explanation will be printed to stderr, obtained
from explain_fgets(3), and then the process terminates by calling exit(EXIT_FAILURE).
This function is intended to be used in a fashion similar to the following example:
explain_fgets_or_die(data, data_size, fp);
data The data, exactly as to be passed to the fgets(3) system call.
data_size
The data_size, exactly as to be passed to the fgets(3) system call.
fp The fp, exactly as to be passed to the fgets(3) system call.
Returns:
This function only returns on success; data when a line is read, or NULL on end-of-file. On failure, prints an explanation and
exits.
SEE ALSO fgets(3)
input of strings
explain_fgets(3)
explain fgets(3) errors
exit(2) terminate the calling process
COPYRIGHT
libexplain version 0.52
Copyright (C) 2008 Peter Miller
explain_fgets_or_die(3)