|
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. |
So ive got a question since there seems to be a lot of intelligent people on here. I am making a program in see and i am using malloc to allocate some memory to store integers in that block of memory.
Say for example i have something like: number = (int*) malloc(userNum);
and then i want to store a number in each location how would i do that? I tried something like: *primes+(*count) = i;
inside of a for loop, but its not actually storing "i" into the memory location. I have a memory leak and i was hoping someone could help me out.
|
First of all it should be malloc(sizeof(int)) i believe, havent used C in a while
second of all, your assignment makes no sense.
you are dereferences two pointers to integers (im assuming), then adding their values, and attempting to assign i to that?
try this
int *primes;
primes = malloc(k * sizeof(int)) (where k is the amount of primes youd like to store)
to get an array of prime integers
then prime[i] = ith prime (for assignment)
EDIT: Oh i see what you were trying to do
You were dereferencing incorrectly:
*(Primes+count) where count is an iterator should work
|
On April 02 2011 02:19 mindoftw wrote: So ive got a question since there seems to be a lot of intelligent people on here. I am making a program in see and i am using malloc to allocate some memory to store integers in that block of memory.
Say for example i have something like: number = (int*) malloc(userNum);
and then i want to store a number in each location how would i do that? I tried something like: *primes+(*count) = i;
inside of a for loop, but its not actually storing "i" into the memory location. I have a memory leak and i was hoping someone could help me out.
malloc(n) allocates (roughly) n bytes of data and returns a pointer to the beginning of that block.
If you are intending on using malloc to create an array of integers, you need the argument to malloc to be some multiple of the size of ints, e.g.,
numbers = malloc(sizeof(int) * 5)
allocates enough memory for 5 ints.
To utilize the space, you can use array-style notation to denote at which position you wish to store data, e.g.,
numbers[2] = i
stores the int i at the 2nd position (i.e., the 3rd element) of the block of memory you allocated. This is just short-hand for doing the manual pointer arithmetic and dereferencing the resulting pointer to access the storage location:
*(numbers+2) = i
where the "+2" really means "move the pointer 2 * sizeof(int) bytes over from numbers".
You attempt this with your code above but it doesn't work. Without knowing what the declarations of primes and count, I can't say for certain what they are doing, but if they are pointers, you actually dereferencing their values and adding them together on the left-hand side rather than doing pointer arithmetic.
|
|
On April 02 2011 02:31 Kambing wrote:Show nested quote +On April 02 2011 02:19 mindoftw wrote: So ive got a question since there seems to be a lot of intelligent people on here. I am making a program in see and i am using malloc to allocate some memory to store integers in that block of memory.
Say for example i have something like: number = (int*) malloc(userNum);
and then i want to store a number in each location how would i do that? I tried something like: *primes+(*count) = i;
inside of a for loop, but its not actually storing "i" into the memory location. I have a memory leak and i was hoping someone could help me out. malloc(n) allocates (roughly) n bytes of data and returns a pointer to the beginning of that block. If you are intending on using malloc to create an array of integers, you need the argument to malloc to be some multiple of the size of ints, e.g., numbers = malloc(sizeof(int) * 5) allocates enough memory for 5 ints. To utilize the space, you can use array-style notation to denote at which position you wish to store data, e.g., numbers[2] = i stores the int i at the 2nd position (i.e., the 3rd element) of the block of memory you allocated. This is just short-hand for doing the manual pointer arithmetic and dereferencing the resulting pointer to access the storage location: *(numbers+2) = i where the "+2" really means "move the pointer 2 * sizeof(int) bytes over from numbers". You attempt this with your code above but it doesn't work. Without knowing what the declarations of primes and count, I can't say for certain what they are doing, but if they are pointers, you actually dereferencing their values and adding them together on the left-hand side rather than doing pointer arithmetic.
You are a gentleman kind sir, helped me out a lot thanks.
|
Top 61 of Junior Competition in the Canadian Computing Competition. Good for an amateur like me...  60/75, hurrah!
Here is the question I asked a few pages back. It's a .pdf, and I couldn't get Question 5. The solution they give makes me cry.
http://access.mmhs.ca/ccc/2011/2011JuniorProblems.pdf
|
Does anyone know of an alternate helper program like visual assist for Visual Studio 2010?
I'm writing C++ CLR applications in class and the lack of intellisense is making my brain explode.
I don't really want to pay $100 for a Visual Assist license =.=
|
On April 02 2011 06:33 Phrost wrote: Does anyone know of an alternate helper program like visual assist for Visual Studio 2010?
I'm writing C++ CLR applications in class and the lack of intellisense is making my brain explode.
I don't really want to pay $100 for a Visual Assist license =.=
I've been looking for an alternative for Visual Assist X (searched stackoverflow, google, tried 2 alternative addons) but VAX is really the best around.
(There are 'free' versions floating around on the internet, but are hard to find )
|
On April 02 2011 05:41 Blisse wrote:Top 61 of Junior Competition in the Canadian Computing Competition. Good for an amateur like me...  60/75, hurrah! Here is the question I asked a few pages back. It's a .pdf, and I couldn't get Question 5. The solution they give makes me cry. http://access.mmhs.ca/ccc/2011/2011JuniorProblems.pdf
well what they specify there should be a tree of some sorts (graph theory!). Basically, what you need to do to get the solution is running a graph scanning algorithm, such as "depth"- or "breadth first search" from all nodes except marc's node (the Nth node), each of these produces a set of reachable nodes. Then you can chose an arbitrary combination of all those sets and get a feasible solution. Putting all possible combinations of sets together gives you the final result.
Example image (green nodes are nodes reached by the graph scanning from the respective initial node) for the example solution presented in your pdf:
|
Anyone know a good Flash guide i mean i dont know shit about it and i have to finish my project
|
On April 04 2011 18:01 OPSavioR wrote: Anyone know a good Flash guide i mean i dont know shit about it and i have to finish my project
14cc every game.
But seriously, it's impossible to know what level you're at to offer you guides; tell us a reference point as to how much coding you've done before.
|
On March 23 2011 03:36 TheBB wrote: Did we do this yet? K&R greatly irks me due to the lack of symmetry. I find it much harder to keep track of what goes together and what doesn't.
|
General question for guys with programming experience in java. Is good to learn JSP at this time? I find it very intrigueing and would like to get into it, but all over the it is written, that its dying, since it is now deprecrated as a view for servlets and it seems JSF is taking over.
So what should i learn if i want to get into dynamic web design with java?
|
Siniyas, if it is deprecated, don't start learning it. Whenever functionality gets deprecated, it is picked up by a new API that is better in one or more ways. For example, a more consistent API, easier to optimize on the implementation side, new features that wouldn't fit nice in the old API, etc.
Find out what the intended replacement is. (I can't advice you on any specifics with Java)
|
Hey guys,
I have a question corresponding to Tokenizer's and String[] in Java.
I have a code where the input is a String[] and my professor said we have to use token method to get the input into Pig Latin.
I have the code complete except I don't know how to get the array into a string so I can use the token method. Which calls for Tokenizer (String str)
I have a feeling that I'm over thinking it though. Thanks for any help
|
Is anyone in Toronto fluent in C enough to help me out. I could trade sc2 lessons for programming perhaps lol ^^
Kinda stuck on a sockets assignment atm, c isn't so intuitive for me with all the memory problems.
|
On April 06 2011 09:55 _Spooky_ wrote: Hey guys,
I have a question corresponding to Tokenizer's and String[] in Java.
I have a code where the input is a String[] and my professor said we have to use token method to get the input into Pig Latin.
I have the code complete except I don't know how to get the array into a string so I can use the token method. Which calls for Tokenizer (String str)
I have a feeling that I'm over thinking it though. Thanks for any help Look up StringTokenizer in the Java documentation (which is really good, btw).
Can you elaborate on what the input is? Is it just a String? or a String array?
To get each word out, StringTokenizer st = new StringTokenizer(yourInputString), then nextWord = st.nextToken(). You should probably use StringBuffer to create the resulting string.
|
If anyone would be kind enough to help me out it would be appreciated!
I have a loadList function which reads the lines of a file and stores them in an array of strings. The code seems to work, I've tried it with local variables and such, it just doesn't want to save them in the array when exiting the function. What confuses me is that I've used the EXACT same method elsewhere where it works as expected.
+ Show Spoiler [Function that works] +
int main() { string s[MAX_SIZE]; int i = 0; addName(s, i); // This works fine }
int addName(string names[], int &curSize) { system("cls"); string t;
getline(cin, t); names[curSize] = t; curSize++; return 0; }
]
+ Show Spoiler [Function that doesn't work] +
int main() { string s[MAX_SIZE]; int i = 0; loadList(s, "asd.txt"); // This does not want to store the file contents in s[]; }
int loadList(string names[], const string fileName) { ifstream f(fileName.c_str()); int p = 0; string t;
while(!f.eof()) { getline(f, t); // Tested this multiple times in different ways, it seems to work. names[p] = t; // I've checked names[p] multiple times after this, and it does store t; p++; } f.close();
return 0; }
I've removed some unnecessary code from there, to keep it clean. Any ideas as to what could be wrong?
|
Hyrule18968 Posts
|
On April 06 2011 23:54 tofucake wrote: The solution is &
Could you clarify?
|
|
|
|