|
see ceil(3.4) will return 4. please check.
|
|
|
|
|
did u try any of
double floor(double x);
float floor(float x);
long double floor(long double x);
float floorf(float x);
- Malli...!
|
|
|
|
|
..am sorry..
I was ment to say floor () function. Please you floor ().
|
|
|
|
|
Yes its working now. Thanks.
|
|
|
|
|
You have to use floor() and add 0.5 to the number you want to round.
|
|
|
|
|
|
Try:
floor(x + 0.5)
- S
50 cups of coffee and you know it's on!
A post a day, keeps the white coats away!
|
|
|
|
|
Fastest way, assembler automatically will do rounding for you, but std lib does it some bakwards way
inline int iround(double v)
{
int retval;
__asm fld qword ptr [v]
__asm fistp dword ptr [retval]
return retval;
}
|
|
|
|
|
my dll code:
void Init()
{
...
CreateThread(NULL, 0, Fun, this, 0, &dw);
...
}
DWORD WINAPI Fun(LPVOID lParam)
{
int i = 0;
while(1)
{
CString cstr;
cstr = "abc";
while(i++>10)
{
CString cstr2;
cstr2 = "eee";
}
}
}
but if I change while(i++>10) to while(i++>2)
CString cstr2 = "eee"; was all right.
|
|
|
|
|
What was the exact error message?
Why don't you use the debugger?
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]
|
|
|
|
|
Hi,
I have a tree such that it can be uniquely determined from its preorder.I have information on which are internal nodes and which are leaves.Something like this
----0
----/-\
---0--0
--/-\--/-\
-1--0-1--1
----/-\
----1--1
the preorder being 001011011
I need some logic to get the tree structure from this preorder
|
|
|
|
|
Following is not the full fleshed code, it's just a skeletal that gives you an idea for implementation (as u just asked for logic ). Better you implement the rest of the part.
class node
{
node *m_pLeftNode;
node *m_pRightNode;
int m_iData;
public :
PostOrderTravarse()
{
m_pLeftNode->PostOrderTravarse();
m_pRightNode->PostOrderTravarse();
cout<<m_iData;
}
PreOrderTravarse()
{
cout<<m_iData;
m_pLeftNode->PreOrderTravarse();
m_pRightNode->PreOrderTravarse();
}
InOrderTravarse()
{
m_pLeftNode->InOrderTravarse();
cout<<m_iData;
m_pRightNode->InOrderTravarse();
}
};
All the best !
- Malli...!
|
|
|
|
|
ummmm...those are tree traversals
I need to construct my tree FROM a preorder traversal
|
|
|
|
|
You may get the same sequence from different binary trees. So its not possible.
|
|
|
|
|
Yup ! I agree with you, one can't get the same by rebuilding the tree from traversals.
- Malli...!
|
|
|
|
|
Not trying the be bossy or rude...but please look at my question...my tree CAN be uniquely determined from the preorder because I have information about internal nodes and leaves.Its a huffman tree.
|
|
|
|
|
aksgh wrote: Its a huffman tree.
Yes didnt see that, you are right. So, for a huffman tree you could the following
typedef struct _node_info {
int is_leaf;
char value;
}node_info;
typedef struct _node {
node_info inf;
node* l;
node* r;
} node;
node* built_tree(node_info* preorder_array, int preorder_array_size)
{
node *root, *n;
int i;
root = malloc(sizeof(node));
stack_push(s, root);
for (i = 0; i < preorder_array_size; i++) {
assert(!stack_empty(s));
n = stack_pop(s);
n->inf = preorder_array[i];
if (!n->inf.is_leaf) {
n->r = malloc(sizeof(node));
stack_push(s, n->r);
n->l = malloc(sizeof(node));
stack_push(s, n->l);
}
}
assert(stack_empty(s));
return root;
}
* i dont set r,l members to zero when i create a node, in order to save some space, but it is something you must do
modified on Friday, September 19, 2008 8:09 AM
|
|
|
|
|
Hi friends,
I need to make a transparent control over Mobile screen.
Eg: Some video is displaying on mobile and my transparent control can be seen on that screen.
Could anybody tell me how to achieve that ??
|
|
|
|
|
How to determine actual virtual memory used for a process using mfc
|
|
|
|
|
Adopt the similar strategy as posted by me below!
Regards,
Rane
|
|
|
|
|
Do you need to SetProcessWorkingSetSize ?
|
|
|
|
|
|
How to determine actual memory used for a process
|
|
|
|
|
Use OpenProcess() to get a handle to the process that you want to monitor.Then use CreateToolhelp32Snapshot() API which will give you lists of the modules (DLLs) that are a part of your process image which you can then iterate using Module32First/Module32Next() and obtain the load addresses and extents.
It will also give you a list of the heaps, runtime allocated memory used by alloc/free and stacks. You then use Heap32ListFirst/Heap32ListNext to iterate those and obtain their start addresses and extents. You then use those addresses with ReadProcessMemory() to actually read the Random Access Memory.
Also, be sure to suspend the target process otherwise things could change the moment after you obtain your information.
Regards,
Rane
|
|
|
|
|
For example,
there are two edit mode, one is for drawing a rect, the other is for dragging a rect.
And I might write both in one message handler (eg. OnMouseMove).
It become less clear when there are more edit modes.
Any way to solve this problem?
system
|
|
|
|