Блог пользователя KartalKaan

Автор KartalKaan, 10 лет назад, По-английски

Hello! I've just started using stringstream's but I've encountered a problem. Why does this code print 0 ?

#include<iostream>
#include<sstream>
using namespace std;
int main()
{
	stringstream ss;
	int i;
	ss<<0;
	ss>>i;
	ss<<1;
	cout<<ss.str()<<endl;
	return 0;
}

Thanks in advance.

Полный текст и комментарии »

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

Автор KartalKaan, 11 лет назад, По-английски

Hello everyone! I have two codes, they print different things but I don't know why. The first one is :

#include <stdio.h>
int main()
{
   int p[6]={1,2,3,4,5,6};
   int *q=(int *)(&p+1);
   printf("%ld\n",q-p);
   return 0;
}

And the second one :

#include <stdio.h>
int main()
{
   int p[6]={1,2,3,4,5,6};
   int *q=(int *)(p+1);
   printf("%ld\n",q-p);
   return 0;
}

First code prints 6, whereas the second one prints 1. The only difference is that the first code has an ampersand before "p+1". Do you know the reason? Thanks.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +9
  • Проголосовать: не нравится