|
Well since it would appear to be RLE [Run Length Encoding], I would google for that.
|
|
|
|
|
Thank you.I got code for same on google!!
|
|
|
|
|
here is an algorithm that should do it, in pseudo-code:
char prev=0;
int count=0;
foreach(char c in the input) {
if (c!=prev) {
if (count>1) output(count);
output(c);
prev=c;
count=0;
}
count++;
}
It is a bit tricky, I suggest you study it first (test it by hand!), then implement it in C and test it again.
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
|
|
|
|
|
Well, you're always right: after all, C# code is pseudo-code.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
CPallini wrote: you're always right
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
|
|
|
|
|
hi
i am trying to encrypting the existing file and folder using the zip archive lib.
here is the code
CZipArchive sar;
sar.Open(_T("C:\\1234.zip"), CZipArchive::zipCreate);
sar.SetCompressionMethod(CZipCompressor::methodBzip2);
sar.AddNewFile(_T("C:\\1234.txt"));
sar.AddNewFile(_T("C:\\sar1"));
sar.AddNewFile(_T("C:\\afzal.txt"));
but i want to do 1234.txt itself an zip file or directory ie existing not by adding the file or folder to a zip file .......
i studied encrypt file method i did't understood the code which they mention in the help file how to use it ..
is there any other way to encrypt it using the zip archive lib
plz help me out this
thanking you
sarfaraz
|
|
|
|
|
I have done this by using an open source
Info Zip->[^]
"Every Little Smile can touch Somebody's Heart...
May we find Hundreds of Reasons to Smile Everyday... and
May WE be the Reason for someone else to smile always!" (ICAN)
|
|
|
|
|
Try asking your question of the author of CZipArchive here[^].
The best things in life are not things.
|
|
|
|
|
how to use it this function CZipArchive::EncryptFile()in MFC in ZIP archive lib they have mention that this function is used encrypt the existing file.i am not able to understand the what parameter does it take uindex means please make it clear with example code ......
|
|
|
|
|
Did you do what I suggested?
The best things in life are not things.
|
|
|
|
|
Hi,
I am working Fodero eclipse c++. I have one unsigned char(one byte unsigned integer) variable.
i am passing some integer value. like
unsigned char aa= 10;
but aa is not assign that value? How to pass that value on unsigned char.
same like i am using unsigned long, i add 'u' on the end the passing number.
unsigned long bb= 10u;
here i got bb value is 10.
how to get unsigned char value?. Any ideas or link share to me.
please urgent
Regards,
M.Mathivanan
|
|
|
|
|
mathivanaan wrote: but aa is not assign that value?
how do you know this?
|
|
|
|
|
mathivanaan wrote: please urgent
Sorry for not understanding: Is it the question that is urgent or the answer, or maybe both? Could you elaborate?
|
|
|
|
|
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Your assignment looks valid. How did you test that aa does not hold the correct value? If you checked in the debugger, or pass it to cout, please remember that the type is still a character, and the standard representation is as a character. The value 10 is a non-prinitable character, and as such would show no visible output either in the debugger or in a printout, unless you convert aa to int first.
|
|
|
|
|
unsigned char aa = (unsigned char)10;
BTW: when you get build-time messages or run-time errors/exceptions, you should mention them verbatim in your question.
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
|
|
|
|
|
mathivanaan wrote: unsigned char aa= 10;
The statement is indeed correct. Probably the fault is in the way you check it.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
You are getting a 10 as a binary value with that assignment.
If you use cout<< to print it out, however, you won't see a 10. That's because cout<< called on a char or unsigned char value always treats the value as a character, not a number. What you will see is that the next thing you output will begin on a new line. The 10 translates to a '\n' newline character.
To see the binary value of a char as a unsigned decimal value, use a typecast first.
unsigned char bb = 10;
cout << "** bb looks like [" << bb <<] this." << endl;
cout << "** (unsigned)bb looks like: " << (unsigned)bb << endl;
Which should display:
** bb looks like [
] this.
** (unsigned)bb looks like: 10
I put the unsigned char version in [] brackets so you can see what the effect is on the output.
Cheers,
Mike
|
|
|
|
|
Thanks Mike. i try it your solution.
|
|
|
|
|
how can i pass the values from child dialog window to parent dialog window. (ie) text box value and etc.., (how to use AfxGetApp())
Ex:
1).CTestdlg (parend dlg)
2).CDatadlg (child dlg)
i want to get data from the CDatadlg edit box to CTestdlg member
|
|
|
|
|
One way is to set the parent dialog pointer to the child window, after creating it. Use this pointer to call parent dialog's functions to notify or to directly set the values.
class CTestDlg;
class CDataDlg
{
.......
public:
SetParentDlg(CTestDlg* parent)
{
m_pTestDlg = parent;
}
private:
CTestDlg* m_pTestDlg;
}
From CTestDlg, after creating child dlg, call SetParentDlg(this) on it.
#include "testdlg.h"
......
m_pTestDlg->Function(data);
Also, you may use SetParent() and GetParent() functions on CTestDlg, and cast the returned pointer to CTestDlg* and use.
AfxGetApp() returns the CWinApp pointer, and you can cast this to your MFC application class and use.
|
|
|
|
|
Thanks "Cool_Dev" it works fine.
|
|
|
|
|
lamrinraj wrote: ...it works fine.
It may "work" but why would you want to "link" two dialog boxes together in this fashion? Having such a strong-coupling model is rarely a good idea.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Some people are making such thorough preparation for rainy days that they aren't enjoying today's sunshine." - William Feather
|
|
|
|
|
1. Send a user defined message to GetParent()
2. Cast GetParent() to CTestDlg* and call a method / set a variable
3. Implement the observer pattern.
4. Use a callback function.
Any of those will do if you need to notify the parent dialog while the child dialog is still opened.
|
|
|
|
|
Hi,
I'm creating a brick game and am having trouble merging these two if blocks. They work independantly fine but not together. Any ideas on how to get them to work. They reverse the velocities of the ball when hitting a brick. I'm also having a problem where the ball sometimes goes through a brick, it flickers and slowly makes its way through,kinda glitchy.
if(Ball_List[b]->gameBall->Bounds.IntersectsWith(Brick1->Bounds))
{
if((Ball_List[b]->gameBall->Right >= Brick1->Left || Ball_List[b]->gameBall->Left <= Brick1->Right))
{
Ball_List[b]->xVel = -Ball_List[b]->xVel;
}
if((Ball_List[b]->gameBall->Bottom >= Brick1->Top || Ball_List[b]->gameBall->Top <= Brick1->Bottom))
{
Ball_List[b]->yVel = -Ball_List[b]->yVel;
}
}
|
|
|
|