Difference Between strncmp and strcmp in C/C++

Mahesh Parahar
Updated on 06-Jan-2020 06:35:51

405 Views

strncmp() and strcmp compares two strings using ASCII character comparison. strncmp takes one additional parameter as number to characters upto which a string is to be compared. It is very useful as if a string is not valid, then strcmp will not be able to complete its operation. strcmp searches for end character ('/0') at string end to finish its operation. strncmp uses no. of characters to end its operation and thus is safe.Example#include int main() {    char str1[] = "TutorialsPoint";    char str2[] = "Tutorials";    // Compare strings with strncmp()    int result1 = strncmp(str1, str2, ... Read More

Difference Between const char*, char const* and const char const* in C

Mahesh Parahar
Updated on 06-Jan-2020 06:30:36

13K+ Views

PointerIn C programming language, *p represents the value stored in a pointer and p represents the address of the value, is referred as a pointer.const char* and char const* says that the pointer can point to a constant char and value of char pointed by this pointer cannot be changed. But we can change the value of pointer as it is not constant and it can point to another constant char.char* const says that the pointer can point to a char and value of char pointed by this pointer can be changed. But we cannot change the value of pointer ... Read More

Difference Between const int, const int&, and int const in C

Mahesh Parahar
Updated on 06-Jan-2020 06:27:49

4K+ Views

PointerIn C programming language, *p represents the value stored in a pointer and p represents the address of the value, is referred as a pointer.const int* and int const* says that the pointer can point to a constant int and value of int pointed by this pointer cannot be changed. But we can change the value of pointer as it is not constant and it can point to another constant int.const int* const says that the pointer can point to a constant int and value of int pointed by this pointer cannot be changed. And we cannot change the value ... Read More

Difference Between ++p, p++, and ++p in C

Mahesh Parahar
Updated on 06-Jan-2020 06:25:31

10K+ Views

Pointer AirthmeticsIn C programming language, *p represents the value stored in a pointer. ++ is increment operator used in prefix and postfix expressions. * is dereference operator. Precedence of prefix ++ and * is same and both are right to left associative. Precedence of postfix ++ is higher than both prefix ++ and * and is left to right associative. See the below example to understand the difference between ++*p, *p++ and *++p.Example (C) Live Demo#include int main() {    int arr[] = {20, 30, 40};    int *p = arr;    int q;    //value of p (20) incremented ... Read More

Difference Between %d and %i Format Specifier in C Language

Mahesh Parahar
Updated on 06-Jan-2020 06:22:05

14K+ Views

Format SpecifiersIn C programming language, %d and %i are format specifiers as where %d specifies the type of variable as decimal and %i specifies the type as integer. In usage terms, there is no difference in printf() function output while printing a number using %d or %i but using scanf the difference occurs. scanf() function detects base using %i but assumes base 10 using %d.Example (C) Live Demo#include int main() {    int num1 ,num2;    int num3, num4;    scanf("%i%d", &num1 , &num2);    printf("%i\t%d", num1, num2);    num3 = 010;    num4 = 010;    printf("%i\t%d", num3, num4); ... Read More

Difference Between int main() and int main(void) in C/C++

Mahesh Parahar
Updated on 06-Jan-2020 06:19:29

989 Views

CIn C programming language, if a function signature is not having any parameters then it can take multiple arguments as input but the same is not true with C++. The compilation will fail if arguments are passed to such a function in C++. This is reason int main() and int main(void) are same in C, but int main(void) is better approach, which restricts the user to pass multiple arguments to main function.Example (C) Live Demo#include int main() {    static int counter = 3;    if (--counter){       printf("%d ", counter);       main(5);    } }Output2 ... Read More

Difference Between Ternary Operator and Null Coalescing Operator in PHP

Mahesh Parahar
Updated on 06-Jan-2020 06:15:23

519 Views

Ternary operatorTernary operator is used to replace if else statements into one statement.Syntax(condition) ? expression1 : expression2;Equivalent Expressionif(condition) {    return expression1; } else {    return expression2; }If condition is true, then it returns result of expression1 else it returns result of expression2. void is not allowed in condition or expressions.Null coalescing operatorNull coalescing operator is used to provide not null value in case the variable is null.Syntax(variable) ?? expression;Equivalent Expressionif(isset(variable)) {    return variable; } else {    return expression; }If variable is null, then it returns result of expression.Example    PHP Example     Outputnot passed not passed

Construct BST from Level Order Traversal in C++

Arnab Chakraborty
Updated on 03-Jan-2020 11:42:38

426 Views

Suppose we have one level order traversal. From this traversal. we have to generate the tree So if the traversal is like [7, 4, 12, 3, 6, 8, 1, 5, 10], then the tree will be like −To solve this, we will use recursive approach. The first element will be the root. The second element will be the left child, and third element will be right child (If the condition of BST satisfies), this property will be satisfied for all elements. So we will follow these steps −At first we have to take the first element of the array, and ... Read More

Construct BST from Given Preorder Traversal in C++

Arnab Chakraborty
Updated on 03-Jan-2020 11:39:48

237 Views

Suppose we have one pre order traversal. From this traversal. we have to generate the tree So if the traversal is like [10, 5, 1, 7, 40, 50], then the tree will be like −To solve this, we will follow these steps −Create empty stackMake the first value as root, and push it into stack.Now keep pooping while the stack is not empty and the next value is greater than stack top element, make this as right child of the last popped node. Now push the new node to the stack.When the next value is less than the top element, ... Read More

Construct BST from Given Preorder Traversal in C++

Arnab Chakraborty
Updated on 03-Jan-2020 11:36:03

209 Views

Suppose we have one pre order traversal. From this traversal. we have to generate the tree So if the traversal is like [10, 5, 1, 7, 40, 50], then the tree will be like −To solve this, we will use this trick. The trick is to set a range {min… max} for each node. At first we will initialize the range as {INT_MIN… INT_MAX}. The first node will definitely be in range, so after that we will create root node. To construct the left subtree, set the range as {INT_MIN… root->data}. If a values is in the range {INT_MIN… root->data}, ... Read More

Advertisements