Sponsored Content
Top Forums Programming Scanf() string pointer problem Post 302874249 by Corona688 on Thursday 14th of November 2013 02:03:30 PM
Old 11-14-2013
Right now you're not freeing anything, which is... kind of okay... the same way its okay, if sloppy, to not close open files. It all goes away when the program ends anyway. But if you were doing that 10,000 times in a loop you'd be using 10,000 times as much memory which could definitely be a Bad Thing.

How to free it? As soon as you don't need any of that array anymore, do this:

Code:
for (x = 0; x < numOfStudents; x++) { free(list[x].studentName); }
free(list);

 

10 More Discussions You Might Find Interesting

1. Programming

Scanf problem under LINUX...

I have a problem reading characters from keyboard with the scanf function. Here there is a little piece of code: #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> /* The last 3 libraries are included because in the real program I use some... (4 Replies)
Discussion started by: robotronic
4 Replies

2. Programming

Problem with function which reutrns pointer to a value

i have a function: char *pcCityIdToCountryName(ADMIN_DB_DATA *pstHEader, unit uiCityID) this returns a pointer to CountryName if cityId is given. to retrieve countryname i give: char *CountryName; CountryName = pcCityIdToCountryName(..................); but when i compile it is giving :... (5 Replies)
Discussion started by: jazz
5 Replies

3. Programming

problem with scanf

hi all! i've written a simple c program: #include<stdio.h> #include<stdlib.h> int main() { int a; char b; char c; ... (4 Replies)
Discussion started by: mridula
4 Replies

4. Programming

pointer problem

could any one tell why the following is showing segmentation fault while using **ptr but working fine using **a #include<stdio.h> ... (1 Reply)
Discussion started by: useless79
1 Replies

5. Programming

String and pointer problem

i am having a string like " X1 " ---> string lenght is 30 I have stored this to a chararry . ref so here ref = " X1 " now i trim the left space by my function . Si the string now becomes "X1 " ---> string lenght is 15... (3 Replies)
Discussion started by: arunkumar_mca
3 Replies

6. Programming

pass a pointer-to-pointer, or return a pointer?

If one wants to get a start address of a array or a string or a block of memory via a function, there are at least two methods to achieve it: (1) one is to pass a pointer-to-pointer parameter, like: int my_malloc(int size, char **pmem) { *pmem=(char *)malloc(size); if(*pmem==NULL)... (11 Replies)
Discussion started by: aaronwong
11 Replies

7. Programming

segfault in pointer to string program

hello all, my question is not about How code can be rewritten, i just wanna know even though i am not using read only memory of C (i have declared str) why this function gives me segfault :wall:and the other code executes comfortably though both code uses same pointer arithmetic. ... (4 Replies)
Discussion started by: zius_oram
4 Replies

8. Programming

pointer problem

Does anyone know? int x = 1; int *p = &++x; //ok ! int *q = &x++; //gives an error :O why the first pointer is ok but the second is an error? (13 Replies)
Discussion started by: nishrestha
13 Replies

9. Programming

How i use pointer as a string in c programing?

I'm newbie learner. My all friend use windows just only me use linux. so i can't solve any problem by myself. i need a solution. how can i use pointer as a string. #include<string.h> #include<stdio.h> int main() { char *s='\0'; gets(s); puts(s); return 0; } This code work on... (6 Replies)
Discussion started by: raihan004
6 Replies

10. Programming

String pointer does not work

Hello, I am trying to reverse complement one string and reverse another (NO complement!), both with pointer. My code compiled without error, but did not do the job I wanted. #include <stdio.h> #include <stdlib.h> #include <zlib.h> #include "kseq.h" // STEP 1: declare the type of file... (5 Replies)
Discussion started by: yifangt
5 Replies
scanf(3int)															       scanf(3int)

Name
       scanf, fscanf, sscanf - convert formatted input

Syntax
       #include <stdio.h>

       int scanf( format [, pointer ] ...  )
       char *format;

       int fscanf( stream, format [, pointer ] ...  )
       FILE *stream;
       char *format;

       int sscanf( s, format [, pointer ] ...  )
       char *s, *format;

Description
       The  international functions and are similar to the standard I/O functions. The difference is that the international functions allow you to
       use the %digit$ conversion character in place of the I% character you use in the standard I/O functions. The digit is  a  decimal  digit  n
       from 1 to 9.  The international functions apply conversions to the n th argument in the argument list, rather than to the next unused argu-
       ment.

       You can use % conversion character in the international functions.  However, you cannot mix the % conversion  character	with  the  %digit$
       conversion character in a single call.

       In  all	cases,	uses the radix character and collating sequence that is defined by the last successful call to category or If the radix or
       collating sequence is undefined, the function uses the C locale definitions.

   International Environment
       LC_COLLATE     Contains the user requirements for language, territory, and codeset for the character collation format.  affects the  behav-
		      ior  of regular expressions and the string collation functions in If is not defined in the current environment, provides the
		      necessary default.

       LC_NUMERIC     If this environment is set and valid, uses the international language database named in the definition  to  determine  radix
		      character rules.

       LANG	      If  this environment variable is set and valid uses the international language database named in the definition to determine
		      collation and character classification rules.  If or is defined,	their definitions supersede the definition of LANG.

Examples
       The following shows an example of using the function:
       scanf("%2$s %1$d", integer, string)
       If the input is `` january 9 '', the function assigns 9 to and ``january'' to

Return Values
       The function returns the number of successfully matched and assigned input fields.  This number can be  zero  if  the  function	encounters
       invalid input characters, as specified by the conversion specification, before it can assign input characters.

       If  the	input ends before the first conflict or conversion, returns EOF.  These functions return EOF on end of input and a short count for
       missing or invalid data items.

Environment
       In POSIX mode, the E, F, and X formats are treated the same as the e, f, and x formats, respectively;  otherwise,  the  upper-case  formats
       expect double, double, and long arguments, respectively.

See Also
       intro(3int), setlocale(3), strtod(3), strtol(3), printf(3int), getc(3s), printf(3s), scanf(3s)
       Guide to Developing International Software

																       scanf(3int)
All times are GMT -4. The time now is 10:11 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy