Here is a program I'm playing around with for fun in the process of learning C. The objective is to create a function
Expand|Select|Wrap|Line Numbers
- filesize()
Expand|Select|Wrap|Line Numbers
- main()
Expand|Select|Wrap|Line Numbers
- #include <stdio.h>
- long filesize(f)
- {
- FILE *fp;
- if((fp = fopen(f, "r")) == NULL)
- {
- printf("unable to open %s\n", f);
- exit(1);
- }
- fseek(fp, 0, SEEK_END);
- long filesize = ftell(fp);
- rewind(fp);
- fclose(fp);
- return(filesize);
- }
- int main(int argc, char *argv[])
- {
- if(argc < 2)
- {
- printf("usage: %s <logfile>\n", argv[0]);
- exit(1);
- }
- long fsize = filesize(argv[1]);
- FILE *fp;
- if((fp = fopen(argv[1], "r")) == NULL)
- {
- printf("unable to open %s\n", argv[1]);
- exit(1);
- }
- printf("filesize of %s: %d bytes\n", argv[1], fsize);
- fclose(fp);
- return 0;
- }
Expand|Select|Wrap|Line Numbers
- filesize()
Expand|Select|Wrap|Line Numbers
- log.c: In function `filesize':
- log.c:6: warning: passing arg 1 of `fopen' makes pointer from integer without a cast
Expand|Select|Wrap|Line Numbers
- long fsize = filesize(argv[1]);
- printf("filesize of %s: %d bytes\n", argv[1], fsize);
By the way, I'm only interested in programming in C at this time.