Sponsored Content
Top Forums Programming trouble handling time_t and struct tm Post 49264 by runawayNinja on Monday 29th of March 2004 05:54:52 PM
Old 03-29-2004
the only typo was the negative 1
i just did a dif and all else is good

so i assume what you said in number two is what i am not doing....

to understand what you are saying
is right now as my code stands i am trying to stat just the name
of the file which is differant then the actual file

does this i am stating just a string thus the reason it fails instead the actual file?

so

char buf[FILENAME_MAX + 1];
snprintf(buf, sizeof buf, "%s/%s", pathname, dir->d_name);
if (stat(buf, &....

produces the actual file path and not just the name
which then i can apply to the stat function and it will actually stat on the file and not just some imaginery thing as i am currently doing.


i appreciate the assitance
 

10 More Discussions You Might Find Interesting

1. Programming

Struct Initialization

Hi We are using a code generator for initializing structures with the #define macro. Compiling it with the GCC 2.8.1 (with -ansi) it OK. But when we are using the SUN C 5.0 compiler it screams. Following is a code sample: #include <stdlib.h> #include <stdio.h> typedef struct TEST3 {... (4 Replies)
Discussion started by: amatsaka
4 Replies

2. Programming

save a struct

hi all , can i save a structure in c in a file? how ? help me , thx. :) (2 Replies)
Discussion started by: kall_ANSI
2 Replies

3. Programming

time_t data type-- what does start +1 mean?

Hi, I am trying to understand an very old C program. .... time_t start, end; ptr = localtime(&start); ... fprintf(out, "%-35s 01 %5s %2s %10d 1 5 /tty/M%d/%02d %24s", buffer3, job, ver, start, mach_num,atoi(buffer), asctime(ptr)); fprintf(out, "%-35s 03 %5s %2s %10d 1 5... (9 Replies)
Discussion started by: whatisthis
9 Replies

4. Programming

struct tm problem

I receive an integer as argument for a function. within function definition i want it to be of type struct tm. eg.. main() { int a; ...... } function(...,..,a,..) int a; { struct tm tm; if(!a) ^ time(&a); ^ ... (4 Replies)
Discussion started by: bankpro
4 Replies

5. Linux

GCOV : struct bb

Hi, I am working on gcov.Meaning, analysing the functionality of gcov. There is one structure called "struct bb". I am not sure, how struct bb members are getting assigned values. If anyone knows how it is happening pls let me know. Thanks in advance. --Vichu (0 Replies)
Discussion started by: Vichu
0 Replies

6. UNIX for Dummies Questions & Answers

How to access a struct within a struct?

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)
Discussion started by: unbelievable21
1 Replies

7. Programming

help with struct command in C

in C i am using this code to get the c time or a time or m time struct dirent *dir; struct stat my; stat(what, &my); thetime = my.st_ctime; How can i check if i have permission to check the c time of the file? (1 Reply)
Discussion started by: omega666
1 Replies

8. UNIX for Dummies Questions & Answers

struct winsize

what is struct winsize used for? i tried looking it up, but no luck. (0 Replies)
Discussion started by: l flipboi l
0 Replies

9. Programming

Storing C++-struct in file - problem when adding new item in struct

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)
Discussion started by: Powerponken
2 Replies

10. Programming

Get struct definition

I have many headers with huge amount of structures in them, typical one looks like this: $ cat a.h struct Rec1 { int f1; int f2; }; struct Rec2 { char r1; char r2; }; struct Rec3 { int f1; float k1; float ... (6 Replies)
Discussion started by: migurus
6 Replies
explain_stat(3) 					     Library Functions Manual						   explain_stat(3)

NAME
explain_stat - explain stat(2) errors SYNOPSIS
#include <libexplain/stat.h> const char *explain_stat(const char *pathname, const struct stat *buf); void explain_message_stat(char *message, int message_size, const char *pathname, const struct stat *buf); const char *explain_errno_stat(int errnum, const char *pathname, const struct stat *buf); void explain_message_errno_stat(char *message, int message_size, int errnum, const char *pathname, const struct stat *buf); DESCRIPTION
These functions may be used to obtain explanations for stat(2) errors . explain_errno_stat const char *explain_errno_stat(int errnum, const char *pathname, const struct stat *buf); The explain_errno_stat function is used to obtain an explanation of an error returned by the stat(2) function. The least the message will contain is the value of strerror(errnum), but usually it will do much better, and indicate the underlying cause in more detail. This function is intended to be used in a fashion similar to the following example: if (stat(pathname, &buf) < 0) { int err = errno; fprintf(stderr, "%s ", explain_errno_stat(err, pathname, &buf)); exit(EXIT_FAILURE); } errnum The error value to be decoded, usually obtained from the errno global variable just before this function is called. This is neces- sary if you need to call any code between the system call to be explained and this function, because many libc functions will alter the value of errno. pathname The original pathname, exactly as passed to the stat(2) system call. buf The original buf, exactly as passed to the stat(2) system call. Returns: The message explaining the error. This message buffer is shared by all libexplain functions which do not supply a buffer in their argument list. This will be overwritten by the next call to any libexplain function which shares this buffer, including other threads. Note: This function is not thread safe, because it shares a return buffer across all threads, and many other functions in this library. explain_message_errno_stat void explain_message_errno_stat(char *message, int message_size, int errnum, const char *pathname, const struct stat *buf); The explain_message_errno_stat function is used to obtain an explanation of an error returned by the stat(2) function. The least the mes- sage will contain is the value of strerror(errnum), but usually it will do much better, and indicate the underlying cause in more detail. This function is intended to be used in a fashion similar to the following example: if (stat(pathname, &buf) < 0) { int err = errno; char message[3000]; explain_message_errno_stat(message, sizeof(message), err, pathname, &buf); fprintf(stderr, "%s ", message); exit(EXIT_FAILURE); } message The location in which to store the returned message. Because a message return buffer has been supplied, this function is thread safe. message_size The size in bytes of the location in which to store the returned message. errnum The error value to be decoded, usually obtained from the errno global variable just before this function is called. This is neces- sary if you need to call any code between the system call to be explained and this function, because many libc functions will alter the value of errno. pathname The original pathname, exactly as passed to the stat(2) system call. buf The original buf, exactly as passed to the stat(2) system call. explain_message_stat void explain_message_stat(char *message, int message_size, const char *pathname, const struct stat *buf); The explain_message_stat function is used to obtain an explanation of an error returned by the stat(2) function. The least the message will contain is the value of strerror(errno), but usually it will do much better, and indicate the underlying cause in more detail. The errno global variable will be used to obtain the error value to be decoded. This function is intended to be used in a fashion similar to the following example: if (stat(pathname, &buf) < 0) { char message[3000]; explain_message_stat(message, sizeof(message), pathname, &buf); fprintf(stderr, "%s ", message); exit(EXIT_FAILURE); } message The location in which to store the returned message. Because a message return buffer has been supplied, this function is thread safe. message_size The size in bytes of the location in which to store the returned message. pathname The original pathname, exactly as passed to the stat(2) system call. buf The original buf, exactly as passed to the stat(2) system call. explain_stat const char *explain_stat(const char *pathname, const struct stat * buf); The explain_stat function is used to obtain an explanation of an error returned by the stat(2) function. The least the message will con- tain is the value of strerror(errno), but usually it will do much better, and indicate the underlying cause in more detail. The errno global variable will be used to obtain the error value to be decoded. This function is intended to be used in a fashion similar to the following example: if (stat(pathname, &buf) < 0) { fprintf(stderr, "%s ", explain_stat(pathname, &buf)); exit(EXIT_FAILURE); } pathname The original pathname, exactly as passed to the stat(2) system call. buf The original buf, exactly as passed to the stat(2) system call. Returns: The message explaining the error. This message buffer is shared by all libexplain functions which do not supply a buffer in their argument list. This will be overwritten by the next call to any libexplain function which shares this buffer, including other threads. Note: This function is not thread safe, because it shares a return buffer across all threads, and many other functions in this library. COPYRIGHT
libexplain version 0.52 Copyright (C) 2008 Peter Miller AUTHOR
Written by Peter Miller <pmiller@opensource.org.au> explain_stat(3)
All times are GMT -4. The time now is 09:09 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy