#include <iostream>
int my_strlen(char *s)
{
char *p = s;
while ( ! (*p = 0) ) ++p;
return p - s;
}
int main()
{
char t[] = "Hello";
std::cout << my_strlen(t) << std::endl;
return 0;
}
#include <iostream>
int my_strlen(const char *s)
{
const char *p = s;
while ( ! (*p = 0) ) ++p;
return p - s;
}
int main()
{
char t[] = "Hello";
std::cout << my_strlen(t) << std::endl;
return 0;
}
#include <iostream>
int my_strlen(const char *s)
{
const char *p = s;
while ( ! (*p == 0) ) ++p;
return p - s;
}
int main()
{
char t[] = "Hello";
std::cout << my_strlen(t) << std::endl;
return 0;
}
#include <iostream>
int my_strlen(char *s)
{
char *p = s;
while ( ! (0 == *p) ) ++p;
return p - s;
}
#include <iostream>
void f()
{
const int ci = 10;
int *ip = const_cast<int *>(&ci);
++*ip;
std::cout << ci << " " << *ip << std::endl;
}
int main()
{
f();
return 0;
}
$ g++ -ansi -pedantic -Wall a.cpp
$ ./a.out
10 11
#include <iostream>
void f(const int ci)
{
int *ip = const_cast<int *>(&ci);
++*ip;
std::cout << ci << " " << *ip << std::endl;
}
int main()
{
const int i = 10;
f(i);
return 0;
}
$ g++ -ansi -pedantic -Wall a.cpp # same with -O3
$ ./a.out
11 11
~