So, i just got the Sony Ereader PRS-T1 and my computer just doesn't seem to want to recognized it. I took a few hours of browsing the web for forums looking for solution, at the end i found nothing. AFTER i few moment later i finally found the solution with help.
1. Connect the device to your computer using the USB charger they supply
2. Check the top left of your device and see if there is the USB symbol (looks like a pitchfork)
3. If its there TOUCH IT!
4. your screen should change to something along the line data transfer
5. click on the only button on the screen and done! you computer should detect the device and ask you how you would like to open the device
Radizzt's Coding/Stuff!
Nothing but personal opinion of whats going on with my life and some codings :D
Wednesday, June 13, 2012
Sunday, April 15, 2012
Test 2 Q4 walkthrough with comments!
Q4:
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
struct PhRec{
char name[60];
int PhoneNumber;
};
bool operator<(PhRec& left,
PhRec& right){
return strcmp(left.name, right.name) < 0;
}
#include "tqueue.h"
int main(){
fstream f("phones.bin", ios::in|ios::binary);//just reads the
file
PhRec pr;
Tqueue<PhRec> Q;//change all Tqueue type into PhRec type
while(f.good()){//continue in this loop if f.good() is true
f.read((char*)&pr, sizeof(pr));//reads the sizeof(pr) and store it
in &pr as a char*
if(f.good()){//if the previous read function worked go in here
Q.append(pr);//append pr (in this case is
a character string) to the queue list
}
}
f.close();
f.open("phones.bin", ios::out|ios::binary);//rewriting the
file
Q.sort(true);//sort the Queue list
while(!Q.isEmpty()){//continue this loop until the Queue list is empty
pr = Q.remove();//assign pr with the value of Q.remove();
f.write((const char*)&pr, sizeof(pr));//write sizeof(pr) bytes from
&pr as a char*
}
return 0;
}
Test 2 Q3 walkthrough with comments!:
//Q3
#include <iostream>
#include "tqueue.h"
using namespace std;
int main(int argc, char* argv[]){
bool badArgs = false;
bool Asc = false;
Tqueue<int> Q;//changing all "type" in tqueue class as int
if(argc < 3){//if there are less than 3 argument in argc
badArgs = true;
}
else{
if(argv[1][0] != '-'){//checks the first character
badArgs = true;
}
else{
if(argv[1][1] == 'a'){//checks the second character
Asc = true;
}
else if(argv[1][1] != 'd'){
badArgs = true;
}
int arg;
for(int i =2; !badArgs && i<argc;i++){//i=2; if !badArg is false and i < argc; i++
if(sscanf(argv[i],"%d", &arg) == 1){//look at argv[i], read it as an integer, store it into &arg, sscanf return
//sscanf returns the number of variable filled (in this case 1)
Q.append(arg);//append the value of arg at the end of the Qlist
}
else{
badArgs = true;
}
}
}
}
if(badArgs){
cout<<"Incorrect class use as follows:"<<endl<<"tq -[a|d] 99 [99 99 ...]"<<endl;
}
else{
Q.sort(Asc);//see if the bool(Ascending) is true or not in the function sort (bool sort(bool Ascending = true);)
//if true will sort the Qlist by ascending order or if false will go descending
while(!Q.isEmpty()){
cout<<Q.remove()<<" ";
}
cout<<endl;
}
return 0;
}
//Q3
#include <iostream>
#include "tqueue.h"
using namespace std;
int main(int argc, char* argv[]){
bool badArgs = false;
bool Asc = false;
Tqueue<int> Q;//changing all "type" in tqueue class as int
if(argc < 3){//if there are less than 3 argument in argc
badArgs = true;
}
else{
if(argv[1][0] != '-'){//checks the first character
badArgs = true;
}
else{
if(argv[1][1] == 'a'){//checks the second character
Asc = true;
}
else if(argv[1][1] != 'd'){
badArgs = true;
}
int arg;
for(int i =2; !badArgs && i<argc;i++){//i=2; if !badArg is false and i < argc; i++
if(sscanf(argv[i],"%d", &arg) == 1){//look at argv[i], read it as an integer, store it into &arg, sscanf return
//sscanf returns the number of variable filled (in this case 1)
Q.append(arg);//append the value of arg at the end of the Qlist
}
else{
badArgs = true;
}
}
}
}
if(badArgs){
cout<<"Incorrect class use as follows:"<<endl<<"tq -[a|d] 99 [99 99 ...]"<<endl;
}
else{
Q.sort(Asc);//see if the bool(Ascending) is true or not in the function sort (bool sort(bool Ascending = true);)
//if true will sort the Qlist by ascending order or if false will go descending
while(!Q.isEmpty()){
cout<<Q.remove()<<" ";
}
cout<<endl;
}
return 0;
}
Quick look at command line: int main(int argc, char* argv[])
#include <iostream>
using namespace std;
int main(int argc,char* argv[]){//argc holds the number of parameter +1 (-d del name = 4 arguments), argv[] holds each character in the array
int i;
if (argv[1][0] != '-'){
cout << "idk what: " << argv[1][0] << " is..."<< endl;
return -1;
}
else{
cout << argc << endl;
cout << "i know what that is" <<endl;
cout <<"Command executed: " <<endl;
cout << "-------------------------" <<endl;
cout << " argv[1][0]:" <<endl;
cout << argv[1][0] << endl;//must use argv[1][x] because argv[0][0] holds the file path name, command prompt accepts a string in the second row([1][x])
cout << " argv[1][1]:" <<endl;
cout << argv[1][1] << endl;//gets the second character of the command line
cout << " argv[1][2]:" <<endl;
cout << argv[1][2] << endl;//gets the third character of the command line
cout << " argv[1][3]:" <<endl;
cout << argv[1][3] << endl;
cout << " argv[1][4]:" <<endl;
cout << argv[1][4] << endl;
cout << " argv[2]:" <<endl;
cout << argv[2] << endl;//checks 2nd argument
cout << " argv[3]:" <<endl;
cout << argv[3] << endl;//checks 3rd argument
cout << " argv[4]:" <<endl;
cout << argv[4] << endl;//checks 4th argument
}
return 0;
}
#include <iostream>
using namespace std;
int main(int argc,char* argv[]){//argc holds the number of parameter +1 (-d del name = 4 arguments), argv[] holds each character in the array
int i;
if (argv[1][0] != '-'){
cout << "idk what: " << argv[1][0] << " is..."<< endl;
return -1;
}
else{
cout << argc << endl;
cout << "i know what that is" <<endl;
cout <<"Command executed: " <<endl;
cout << "-------------------------" <<endl;
cout << " argv[1][0]:" <<endl;
cout << argv[1][0] << endl;//must use argv[1][x] because argv[0][0] holds the file path name, command prompt accepts a string in the second row([1][x])
cout << " argv[1][1]:" <<endl;
cout << argv[1][1] << endl;//gets the second character of the command line
cout << " argv[1][2]:" <<endl;
cout << argv[1][2] << endl;//gets the third character of the command line
cout << " argv[1][3]:" <<endl;
cout << argv[1][3] << endl;
cout << " argv[1][4]:" <<endl;
cout << argv[1][4] << endl;
cout << " argv[2]:" <<endl;
cout << argv[2] << endl;//checks 2nd argument
cout << " argv[3]:" <<endl;
cout << argv[3] << endl;//checks 3rd argument
cout << " argv[4]:" <<endl;
cout << argv[4] << endl;//checks 4th argument
}
return 0;
}
Sunday, April 8, 2012
Break down of the Fstream walkthrough in class:
#include <fstream>
#include <iostream>
using namespace std;
int main(){
int i,j;
cout<<sizeof(i)<<endl; // the output of this line is 4
fstream f("f.bin",ios::out|ios::in|ios::binary|ios::trunc);
for(i=10;i<100;i+=10){//write 10,20,30...90
f.write((const char*)&i, sizeof(int)); //casting &i to char* because you cannot convert a char with a int because char are 1 byte whilst int are 4 bytes
//hence turning it to char* and &i will make both variable to 4 bytes (all pointers are 4 bytes)
//we put sizeof(int) because we want to write 4 bytes because we want to keep the number in the file as int not char hence keeping the right number
}
f.seekg((ios::pos_type)20);//going to position 20 in bytes(since in the file each number is an integer (4 bytes) it will shift 5 numbers (20/4)), casting 20 as a pos_type
f.read((char*)&i, sizeof(int));//reads sizeof(int)(4 bytes) and store it in i
cout<<i<<endl; // 1 mark //output is 60, even though its on position 50 it reads number after the position not the position itself
f.seekg(-(ios::off_type)sizeof(int), ios::end);//go back 4 bytes from the end of the file,at position is at 80
f.read((char*)&i, sizeof(int));//read the next 4 byte and store it in i
cout<<i<<endl; // 1 mark output: 90.
f.seekg(-(ios::off_type)sizeof(int)*3, ios::cur);//go back 12(4*3) bytes(3 ints) from the current position(90), at position(60)
f.read((char*)&i, sizeof(int));
cout<<i<<endl; // 1 mark output:70
f.seekp((ios::off_type)sizeof(int)*2, ios::beg);//go up 8 bytes from the beginnning of the file position(20)
f.write((char*)&i, sizeof(int));//write 4 bytes from &i(holding number 70 from previous read function)
f.seekp((ios::off_type)0, ios::end);//change the writing position to the end of the file
cout<<(j=f.tellp())<<endl; // 1 mark, j=36 because there are 9 integer in the file hence 36 bytes in total (4*9)
f.seekg(0);//put the reading cursor to position 0
while(f.tellg() < j){ // 1 mark, read one integer at a time until the f.tellg() is less than j
cout << "("<<f.tellg() <<")";
f.read((char*)&i, sizeof(int));
cout<<i<<"("<<f.tellg() << "), ";
}
//output: (0)10(4), (4)20(8), (8)70(12), (12)40(16), (16)50(20), (20)60(24), (24)70(28), (28)80(32), (32)90(36),
cout<<endl;
return 0;
}
#include <fstream>
#include <iostream>
using namespace std;
int main(){
int i,j;
cout<<sizeof(i)<<endl; // the output of this line is 4
fstream f("f.bin",ios::out|ios::in|ios::binary|ios::trunc);
for(i=10;i<100;i+=10){//write 10,20,30...90
f.write((const char*)&i, sizeof(int)); //casting &i to char* because you cannot convert a char with a int because char are 1 byte whilst int are 4 bytes
//hence turning it to char* and &i will make both variable to 4 bytes (all pointers are 4 bytes)
//we put sizeof(int) because we want to write 4 bytes because we want to keep the number in the file as int not char hence keeping the right number
}
f.seekg((ios::pos_type)20);//going to position 20 in bytes(since in the file each number is an integer (4 bytes) it will shift 5 numbers (20/4)), casting 20 as a pos_type
f.read((char*)&i, sizeof(int));//reads sizeof(int)(4 bytes) and store it in i
cout<<i<<endl; // 1 mark //output is 60, even though its on position 50 it reads number after the position not the position itself
f.seekg(-(ios::off_type)sizeof(int), ios::end);//go back 4 bytes from the end of the file,at position is at 80
f.read((char*)&i, sizeof(int));//read the next 4 byte and store it in i
cout<<i<<endl; // 1 mark output: 90.
f.seekg(-(ios::off_type)sizeof(int)*3, ios::cur);//go back 12(4*3) bytes(3 ints) from the current position(90), at position(60)
f.read((char*)&i, sizeof(int));
cout<<i<<endl; // 1 mark output:70
f.seekp((ios::off_type)sizeof(int)*2, ios::beg);//go up 8 bytes from the beginnning of the file position(20)
f.write((char*)&i, sizeof(int));//write 4 bytes from &i(holding number 70 from previous read function)
f.seekp((ios::off_type)0, ios::end);//change the writing position to the end of the file
cout<<(j=f.tellp())<<endl; // 1 mark, j=36 because there are 9 integer in the file hence 36 bytes in total (4*9)
f.seekg(0);//put the reading cursor to position 0
while(f.tellg() < j){ // 1 mark, read one integer at a time until the f.tellg() is less than j
cout << "("<<f.tellg() <<")";
f.read((char*)&i, sizeof(int));
cout<<i<<"("<<f.tellg() << "), ";
}
//output: (0)10(4), (4)20(8), (8)70(12), (12)40(16), (16)50(20), (20)60(24), (24)70(28), (28)80(32), (32)90(36),
cout<<endl;
return 0;
}
Saturday, April 7, 2012
Simple look at casting operator overload:
#include <iostream>
using namespace std;
class fun{
int _data;
char _char;
int* _data2;
public:
fun():_data(0){}
fun(int d):_data(d),_char('w'),_data2(0){}
fun(int d, char c):_data(d),_char(c),_data2(0){}
fun(int d, char c,int size):_data(d),_char(c){_data2 = new int[size];}
void show(){cout << "data is: " << _data << endl;
cout << "character is: "<< _char << endl;}
operator int(){cout << "inside int casting operator" << endl;//casting operator int()
return _data;}
operator char(){{cout << "inside char casting operator" << endl;//casting operator char()
return _char;}}
operator int*(){cout << "inside int* casting operator" << _data2<<endl;//casting operator int*()
return _data2;}
~fun(){
delete [] _data2;
}
};
int main (){
int x=20;
char c='d';
int* ptr(0);
fun a(5);
a.show();
x=(int)a;//calling int casting operator of class
cout << "x: " << x << endl;//output: x: 5
cout << endl;
fun stuff(10,'f',3);
stuff.show();
c = char(stuff);//calling char casting operator of class
cout << c << endl;//output: f
cout << "&ptr: " << ptr << endl;
cout << "size: " << sizeof(ptr) << endl;
ptr = (int*)stuff;//calling int* casting operator
cout << "&ptr: " << ptr << endl;//output &ptr: (same addess as _data2 in fun class)
cout << "size: " << sizeof(ptr) << endl;
delete [] ptr;
return 0;
}
//ps a little thanks to Mr. D'amico for telling me casting is a operator XD
#include <iostream>
using namespace std;
class fun{
int _data;
char _char;
int* _data2;
public:
fun():_data(0){}
fun(int d):_data(d),_char('w'),_data2(0){}
fun(int d, char c):_data(d),_char(c),_data2(0){}
fun(int d, char c,int size):_data(d),_char(c){_data2 = new int[size];}
void show(){cout << "data is: " << _data << endl;
cout << "character is: "<< _char << endl;}
operator int(){cout << "inside int casting operator" << endl;//casting operator int()
return _data;}
operator char(){{cout << "inside char casting operator" << endl;//casting operator char()
return _char;}}
operator int*(){cout << "inside int* casting operator" << _data2<<endl;//casting operator int*()
return _data2;}
~fun(){
delete [] _data2;
}
};
int main (){
int x=20;
char c='d';
int* ptr(0);
fun a(5);
a.show();
x=(int)a;//calling int casting operator of class
cout << "x: " << x << endl;//output: x: 5
cout << endl;
fun stuff(10,'f',3);
stuff.show();
c = char(stuff);//calling char casting operator of class
cout << c << endl;//output: f
cout << "&ptr: " << ptr << endl;
cout << "size: " << sizeof(ptr) << endl;
ptr = (int*)stuff;//calling int* casting operator
cout << "&ptr: " << ptr << endl;//output &ptr: (same addess as _data2 in fun class)
cout << "size: " << sizeof(ptr) << endl;
delete [] ptr;
return 0;
}
//ps a little thanks to Mr. D'amico for telling me casting is a operator XD
Break down of Fstream example in class
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
class Employee{
char _name[15];
char _lastname[30];
int _empno;
double _salary;
public:
Employee(const char* name="", const char* lastname="", int empno=0, double salary=0.0){
set(name, lastname, empno, salary);
}
void set(const char* name="", const char* lastname="", int empno=0, double salary=0.0){
strcpy(_name, name);
strcpy(_lastname, lastname);
_empno = empno;
_salary = salary;
}
ostream& print(ostream& OS)const{
return OS<<"Name: "<<_name<<" "<<_lastname<<endl<<"EmpNo: "<<_empno
<<", Salary: "<<_salary;
}
virtual ~Employee(){
//print(cout)<<"is dead!!!!"<<endl;
}
};
ostream& operator<<(ostream& OS, const Employee& E){
return E.print(OS);
}
int main(){
Employee E;
ifstream file;
file.open("emp.bin",ios::binary);//open the file emp.bin, consider the stream as Binary instead of text
file.seekg((ios::off_type)0, ios::end);//set the cursor position from (0), to the end of the file(ios::end)
int loc = file.tellg();//set loc to the cursor position (tellg())
cout << sizeof(Employee) << endl;
while(loc > 0 ){//while loc is greater than zero go in here.
loc -= sizeof(Employee);//subtract loc by the size of an Employee object (72)
file.seekg((ios::pos_type)loc);//put the cursor position to loc (first time in is 288 then, 216, 144, 72, 0)
file.read((char*)&E, sizeof(Employee));//read (sizeof(Employees) = 72) of character from the current position and store it in &E, which is cast to a char*
cout<<E<<endl;
}
return 0;
}
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
class Employee{
char _name[15];
char _lastname[30];
int _empno;
double _salary;
public:
Employee(const char* name="", const char* lastname="", int empno=0, double salary=0.0){
set(name, lastname, empno, salary);
}
void set(const char* name="", const char* lastname="", int empno=0, double salary=0.0){
strcpy(_name, name);
strcpy(_lastname, lastname);
_empno = empno;
_salary = salary;
}
ostream& print(ostream& OS)const{
return OS<<"Name: "<<_name<<" "<<_lastname<<endl<<"EmpNo: "<<_empno
<<", Salary: "<<_salary;
}
virtual ~Employee(){
//print(cout)<<"is dead!!!!"<<endl;
}
};
ostream& operator<<(ostream& OS, const Employee& E){
return E.print(OS);
}
int main(){
Employee E;
ifstream file;
file.open("emp.bin",ios::binary);//open the file emp.bin, consider the stream as Binary instead of text
file.seekg((ios::off_type)0, ios::end);//set the cursor position from (0), to the end of the file(ios::end)
int loc = file.tellg();//set loc to the cursor position (tellg())
cout << sizeof(Employee) << endl;
while(loc > 0 ){//while loc is greater than zero go in here.
loc -= sizeof(Employee);//subtract loc by the size of an Employee object (72)
file.seekg((ios::pos_type)loc);//put the cursor position to loc (first time in is 288 then, 216, 144, 72, 0)
file.read((char*)&E, sizeof(Employee));//read (sizeof(Employees) = 72) of character from the current position and store it in &E, which is cast to a char*
cout<<E<<endl;
}
return 0;
}
Subscribe to:
Posts (Atom)