473,327 Members | 2,074 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,327 software developers and data experts.

c++ begginer program help

hi, I am quite new to c++ programming and I would need some help with
my college assigment:
write a program which reads input c++ file and removes commentary. The
commentary can be oneline(//) and block commentary(/**/. The name of
the file is read from the command line. use functions and global
variables if neccesary.
here is my code. Thanks in advance
#include <fstream>
#include <stdlib.h>
#include <iostream.h>
#include <stdio.h>
ifstream fp;
ofstream fpp;

void remove (int kraj, char *line){ //removes '//' and saves to file
int i;
for (i = 0; i <= kraj; i++) {
fpp<<line;
}
}
void proceed (int kkraj, char *line,int lenght){
int i;
for (i = kkraj; i<=lenght; i++) {
fpp<<line;
}

}
void main(){
int i ,k, k2,k3;
char filename[12];
char *line;
cout<<"what is the name of the file";
cin>>filename;
fp.open (filename, ios :: in); //file to read from
if (!fp){
cout<<"\n error opening\n";
exit(0);
}
fpp.open("no commentary", ios:ut); //file to save non commentary
program to
if (!fpp){
cout << "Error opening file.\n";
}
while(line=fgets(fp)){
for(i=0; i<strlen(line); i++){
if ((line[i]=='/')&&(line[i+1]=='/')) {
k=i-1;
remove(k, line);

}
if ((line[i]=='/')&&(!begin)&&(line[i+1]=='*')) {
k2=i-1;
remove(k2, line);
begin=1;

}
if ((line[i]=='*')&&(begin)&&(line[i+1]=='/')){
k3=i-1;
begin=0;
proceed(k3, line, strlen(line)) ;
}

}
fp.close() ;
fpp.close() ;
return;
}

}

Apr 4 '07 #1
11 1552
srenusa wrote:
hi, I am quite new to c++ programming and I would need some help with
my college assigment:
write a program which reads input c++ file and removes commentary. The
commentary can be oneline(//) and block commentary(/**/. The name of
the file is read from the command line. use functions and global
variables if neccesary.
here is my code. Thanks in advance
What kind of help do you want? I didn't try, but I would not expect this to
compile.
I would like to see descriptions as to what the remove and proceed functions
are intended to perform. I would like to see indentation. Does your program
allow for the fact the /* and the matching */ can be on different lines?

<snippage>
>void remove (int kraj, char *line){ //removes '//' and saves to file
Surely not!? The instructions were to remove the commentary, not the thing
that indicates it *is* a commentary
fpp.open("no commentary", ios:ut); //file to save non commentary
I'm basing what I said on not compiling on that line. I think it should be
ios::out. *Two* changes I just scanned the code idly to see if I thought it
might compile.

Apr 4 '07 #2

I have a problem with mismatching: cannot convert ifstream to char:
while(line=fgets(fp)){
for(i=0; i<signed(strlen(line)); i++){
void remove (int kraj, char *line){ //removes '//' and saves to file
I intended this function to write to a new file all characters
until //
characters are placed in char line and I thought that line[1]
represents the first character.
fpp.open("no commentary", ios:ut); //file to save non commentary
tipfeller :)
thx for your help :)

Apr 4 '07 #3
sr*****@yahoo.com wrote:
I have a problem with mismatching: cannot convert ifstream to char:
while(line=fgets(fp)){
What is 'line=fgets(fp)' supposed to do? Perhaps you need to RTFM
about 'fgets' and 'ifstream'...
for(i=0; i<signed(strlen(line)); i++){
[..]
V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Apr 4 '07 #4
srenusa wrote:

<snippage>
#include <fstream>
#include <stdlib.h>
#include <iostream.h>
#include <stdio.h>
ifstream fp;
ofstream fpp;

void main(){
int i ,k, k2,k3;
char filename[12];
char *line;
cout<<"what is the name of the file";
cin>>filename;
fp.open (filename, ios :: in); //file to read from
if (!fp){
cout<<"\n error opening\n";
exit(0);
}
fpp.open("no commentary", ios:ut); //file to save non commentary
program to
if (!fpp){
cout << "Error opening file.\n";
}
while(line=fgets(fp)){
line is a char* pointing to God knows where. You are off to a bad start.
There are better ways of doing this. Look into

string line;
getline(fin, line): // where fiin is a file that is open for input
if(!cin)
// almost certainly EOF
else
// do something wise and Good with line.
Apr 4 '07 #5
"osmium" wrote:
srenusa wrote:

<snippage>
>#include <fstream>
#include <stdlib.h>
#include <iostream.h>
#include <stdio.h>
ifstream fp;
ofstream fpp;

void main(){
int i ,k, k2,k3;
char filename[12];
char *line;
cout<<"what is the name of the file";
cin>>filename;
fp.open (filename, ios :: in); //file to read from
if (!fp){
cout<<"\n error opening\n";
exit(0);
}
fpp.open("no commentary", ios:ut); //file to save non commentary
program to
if (!fpp){
cout << "Error opening file.\n";
}
while(line=fgets(fp)){

line is a char* pointing to God knows where. You are off to a bad start.
There are better ways of doing this. Look into

string line;
getline(fin, line): // where fiin is a file that is open for input
if(!cin)
Should be:
if(!fin)
// almost certainly EOF
else
// do something wise and Good with line.


Apr 4 '07 #6
sr*****@yahoo.com wrote:
hi, I am quite new to c++ programming and I would need some help with
my college assigment:
write a program which reads input c++ file and removes commentary. The
commentary can be oneline(//) and block commentary(/**/. The name of
the file is read from the command line. use functions and global
variables if neccesary.
here is my code. Thanks in advance
#include <fstream>
#include <stdlib.h>
#include <iostream.h>
Non-standard header. Use <iostream>
#include <stdio.h>
ifstream fp;
ofstream fpp;

void remove (int kraj, char *line){ //removes '//' and saves to file
int i;
for (i = 0; i <= kraj; i++) {
fpp<<line;
}
}
void proceed (int kkraj, char *line,int lenght){
int i;
for (i = kkraj; i<=lenght; i++) {
fpp<<line;
}

}
void main(){
void main is not C++. main() always returns int.

int i ,k, k2,k3;
char filename[12];
char *line;
cout<<"what is the name of the file";
cin>>filename;
fp.open (filename, ios :: in); //file to read from
if (!fp){
cout<<"\n error opening\n";
exit(0);
}
fpp.open("no commentary", ios:ut); //file to save non commentary
program to
if (!fpp){
cout << "Error opening file.\n";
}
while(line=fgets(fp)){
for(i=0; i<strlen(line); i++){
if ((line[i]=='/')&&(line[i+1]=='/')) {
k=i-1;
remove(k, line);

}
if ((line[i]=='/')&&(!begin)&&(line[i+1]=='*')) {
k2=i-1;
remove(k2, line);
begin=1;

}
if ((line[i]=='*')&&(begin)&&(line[i+1]=='/')){
k3=i-1;
begin=0;
proceed(k3, line, strlen(line)) ;
}

}
fp.close() ;
fpp.close() ;
return;
}

}
Apr 5 '07 #7
On Apr 4, 9:34 pm, "osmium" <r124c4u...@comcast.netwrote:
srenusa wrote:
string line;
getline(fin, line): // where fiin is a file that is open for input
if(!cin)
// almost certainly EOF
else
// do something wise and Good with line.
This is generally good advice, but I'm wondering. Given that
one of the forms of comments ("/*...*/") can span multiple
lines, I wonder if it wouldn't be better to read character by
character, and use a state machine of some sort. Or use simple
queue (e.g. std::deque) to keep a sliding window of two
characters in the file.

--
James Kanze (GABI Software) email:ja*********@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Apr 5 '07 #8
Comments in line

<sr*****@yahoo.comwrote in message
news:11**********************@w1g2000hsg.googlegro ups.com...
hi, I am quite new to c++ programming and I would need some help with
my college assigment:
write a program which reads input c++ file and removes commentary. The
commentary can be oneline(//) and block commentary(/**/. The name of
the file is read from the command line. use functions and global
variables if neccesary.
here is my code. Thanks in advance
#include <fstream>
#include <stdlib.h>
#include <iostream.h>
#include <stdio.h>
ifstream fp;
ofstream fpp;

void remove (int kraj, char *line){ //removes '//' and saves to file
Comment, or function, is wrong. It should remove the // and everything
after it.
I.E. If it was processing this file, for your line above:
void remove (int kraj, char *line){ //removes '//' and saves to file
it should write:
void remove (int kraj, char *line){

So basically you want to write everying up to the //

forget about char* and use std::string, then you can use find, will make
your life a LOT easier.

In otherwords, rewrite this function using std::string, or just move it to
mainline (it's like 2 lines of code
int i;
for (i = 0; i <= kraj; i++) {
fpp<<line;
}
}
void proceed (int kkraj, char *line,int lenght){
No comment, but I take it this function is supposed to write everything
*after* kkraj to the file.
int i;
for (i = kkraj; i<=lenght; i++) {
fpp<<line;
}

}
void main(){
int i ,k, k2,k3;
char filename[12];
12 characters is no where near long enough. forget about char arrays and
use std::string

std::string filename;
char *line;
This is a pointer. But it's not initialized so is pointing to... anything.
Somewhere in memory where most likely you don't want to write. use
std::string and you wont' have a problem.

std::string line;
cout<<"what is the name of the file";
cin>>filename;
fp.open (filename, ios :: in); //file to read from
open takes a char*, and if you make filename a std::string you'd need to do:
fp.open( filename.c_str(), ios::in )
if (!fp){
cout<<"\n error opening\n";
exit(0);
}
fpp.open("no commentary", ios:ut); //file to save non commentary
program to
if (!fpp){
cout << "Error opening file.\n";
}
while(line=fgets(fp)){
How about:
while ( std::getline( line ) )
for(i=0; i<strlen(line); i++){
if ((line[i]=='/')&&(line[i+1]=='/')) {
You can use find() here if you are using a std::string to get the position.
std::string::size_type k = line.find("//");

To see if it found it, compare it with std::string::npos.

if ( k != std::string::npos )
// ...

Now, what you really want at this point is just to keep everything up to the
//
I'd just use substr
line = substr( line, k );
Now the // and everything past it are gone.
k=i-1;
remove(k, line);
Ahh, did you really want to do this? What if you are in the middle of a
block comment? Then you don't want to write this line. You should check to
see about block comments before worrying about the line themselves. Move
this section down below the block comment part.
>
}
if ((line[i]=='/')&&(!begin)&&(line[i+1]=='*')) {
k2=i-1;
remove(k2, line);
begin=1;
begin = 1
Why not use C++'s bool?
begin = true;
But, of course, you never declared begin anywhere, did you?
And begin isn't very descriptive of what this variable does either. So
before while do something like:
bool BlockComment = false;

here you would do
BlockComment = true;
}
if ((line[i]=='*')&&(begin)&&(line[i+1]=='/')){
Again, with std::string this becomes
k3=i-1;
begin=0;
proceed(k3, line, strlen(line)) ;
}

}
fp.close() ;
fpp.close() ;
return;
}

}
Hmm.. I dont' see where you checked for ending a block comment, or where you
are not writing anything if you started a block comment.

If you read thourgh the comments people provided and look at your code you
should be able to figure it out. You have the logic about 50% right. Using
chae pointers is making it much more difficult then it needs to be,
std::strings will make it a whole lot easier, especially since then you can
use find, substr and other functions.
Apr 6 '07 #9

"Jim Langston" <ta*******@rocketmail.comwrote in message
news:uT*****************@newsfe02.lga...
Comments in line

<sr*****@yahoo.comwrote in message
news:11**********************@w1g2000hsg.googlegro ups.com...
>hi, I am quite new to c++ programming and I would need some help with
my college assigment:
write a program which reads input c++ file and removes commentary. The
commentary can be oneline(//) and block commentary(/**/. The name of
the file is read from the command line. use functions and global
variables if neccesary.
here is my code. Thanks in advance
#include <fstream>
#include <stdlib.h>
#include <iostream.h>
#include <stdio.h>
ifstream fp;
ofstream fpp;

void remove (int kraj, char *line){ //removes '//' and saves to file

Comment, or function, is wrong. It should remove the // and everything
after it.
I.E. If it was processing this file, for your line above:
void remove (int kraj, char *line){ //removes '//' and saves to file
it should write:
void remove (int kraj, char *line){

So basically you want to write everying up to the //

forget about char* and use std::string, then you can use find, will make
your life a LOT easier.

In otherwords, rewrite this function using std::string, or just move it to
mainline (it's like 2 lines of code
>int i;
for (i = 0; i <= kraj; i++) {
fpp<<line;
}
}
>void proceed (int kkraj, char *line,int lenght){

No comment, but I take it this function is supposed to write everything
*after* kkraj to the file.
>int i;
for (i = kkraj; i<=lenght; i++) {
fpp<<line;
}

}
void main(){
int i ,k, k2,k3;
char filename[12];

12 characters is no where near long enough. forget about char arrays and
use std::string

std::string filename;
>char *line;

This is a pointer. But it's not initialized so is pointing to...
anything. Somewhere in memory where most likely you don't want to write.
use std::string and you wont' have a problem.

std::string line;
>cout<<"what is the name of the file";
cin>>filename;
fp.open (filename, ios :: in); //file to read from

open takes a char*, and if you make filename a std::string you'd need to
do:
fp.open( filename.c_str(), ios::in )
>if (!fp){
cout<<"\n error opening\n";
exit(0);
}
fpp.open("no commentary", ios:ut); //file to save non commentary
program to
if (!fpp){
cout << "Error opening file.\n";
}
while(line=fgets(fp)){

How about:
while ( std::getline( line ) )
Sorry, that's
while ( std::getline( fp, line ))
>for(i=0; i<strlen(line); i++){
if ((line[i]=='/')&&(line[i+1]=='/')) {

You can use find() here if you are using a std::string to get the
position.
std::string::size_type k = line.find("//");

To see if it found it, compare it with std::string::npos.

if ( k != std::string::npos )
// ...

Now, what you really want at this point is just to keep everything up to
the //
I'd just use substr
line = substr( line, k );
Now the // and everything past it are gone.
>k=i-1;
remove(k, line);

Ahh, did you really want to do this? What if you are in the middle of a
block comment? Then you don't want to write this line. You should check
to see about block comments before worrying about the line themselves.
Move this section down below the block comment part.
>>
}
if ((line[i]=='/')&&(!begin)&&(line[i+1]=='*')) {
k2=i-1;
remove(k2, line);
begin=1;

begin = 1
Why not use C++'s bool?
begin = true;
But, of course, you never declared begin anywhere, did you?
And begin isn't very descriptive of what this variable does either. So
before while do something like:
bool BlockComment = false;

here you would do
BlockComment = true;
>}
if ((line[i]=='*')&&(begin)&&(line[i+1]=='/')){

Again, with std::string this becomes
>k3=i-1;
begin=0;
proceed(k3, line, strlen(line)) ;
}

}
fp.close() ;
fpp.close() ;
return;
}

}

Hmm.. I dont' see where you checked for ending a block comment, or where
you are not writing anything if you started a block comment.

If you read thourgh the comments people provided and look at your code you
should be able to figure it out. You have the logic about 50% right.
Using chae pointers is making it much more difficult then it needs to be,
std::strings will make it a whole lot easier, especially since then you
can use find, substr and other functions.

Apr 6 '07 #10
On Apr 6, 12:00 pm, "Jim Langston" <tazmas...@rocketmail.comwrote:
<sren...@yahoo.comwrote in message
news:11**********************@w1g2000hsg.googlegro ups.com...
On the whole, your comments are on target, and correspond to
generally accepted good programming, but in thie particular
case...

[...]
forget about char* and use std::string, then you can use find, will make
your life a LOT easier.
Whatever you do, don't use char*, that's for sure. But in this
case, I don't think that std::string is really the answer
either.

[...]
How about:
while ( std::getline( line ) )
Generally (say about 99 times out of 100), I'd recommend the
same thing. If the grammar is line oriented, it makes
resynchronizing after an error child's play, and even if the
grammar isn't line oriented, it provides as good a "chunk" as
anything else, and makes it easy to indicate line numbers in the
error messages.

In his case, however, he isn't doing any real parsing, and
there's no error handling, so these considerations don't come
into play. And one of his constructs (a block comment) can
extend across line boundaries---I think you'll find handling it
correctly no easy job if you insist on reading line by line. In
this one particular case (again: it's an exception---your
suggestions are better 99% of the time), I'd use a sliding
window in the file, implemented using std::deque<char>. It took
me less than 5 minutes to come up the following general sketch:

class Window
{
public:
explicit Window( size_t size = 2 ) ;
size_t fill( std::istream& source ) ;
void pop( size_t n = 1 ) ;
char top() const ;
size_t size() const ;
bool matchPrefix( std::string const& target )
const ;

private:
size_t myMaxSize ;
std::deque< char myWindow ;
} ;

Window::Window(
size_t size )
: myMaxSize( size )
{
}

size_t
Window::fill(
std::istream& source )
{
while ( source && myWindow.size() != myMaxSize ) {
char ch ;
if ( source.get( ch ) ) {
myWindow.push_back( ch ) ;
}
}
return myWindow.size() ;
}

void
Window::pop(
size_t n )
{
myWindow.erase(
myWindow.begin(),
myWindow.begin() + std::min( myWindow.size(), n ) ) ;
}

char
Window::top() const
{
assert( ! myWindow.empty() ) ;
return myWindow.front() ;
}

size_t
Window::size() const
{
return myWindow.size() ;
}

bool
Window::matchPrefix(
std::string const& target ) const
{
return myWindow.size() >= target.size()
&& std::equal( target.begin(), target.end(),
myWindow.begin() ) ;
}

int
main()
{
enum State
{
start,
inBlockComment,
inLineComment
} state = start ;
Window w ;
while ( w.fill( std::cin ) != 0 ) {
switch ( state ) {
case start :
if ( w.matchPrefix( "//" ) ) {
state = inLineComment ;
w.pop( 2 ) ;
} else if ( w.matchPrefix( "/*" ) ) {
state = inBlockComment ;
w.pop( 2 ) ;
} else {
std::cout << w.top() ;
w.pop( 1 ) ;
}
break ;

case inBlockComment :
if ( w.matchPrefix( "*/" ) ) {
state = start ;
w.pop( 2 ) ;
} else {
w.pop( 1 ) ;
}
break ;

case inLineComment :
if ( w.matchPrefix( "\n" ) ) {
state = start ;
} else {
w.pop( 1 ) ;
}
break ;
}
}
return 0 ;
}
Hmm.. I dont' see where you checked for ending a block comment, or where you
are not writing anything if you started a block comment.
Which will be non-trivial problems if he reads line by line.

--
James Kanze (Gabi Software) email: ja*********@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Apr 6 '07 #11
Comment at very bottom

"James Kanze" <ja*********@gmail.comwrote in message
news:11**********************@b75g2000hsg.googlegr oups.com...
On Apr 6, 12:00 pm, "Jim Langston" <tazmas...@rocketmail.comwrote:
<sren...@yahoo.comwrote in message
news:11**********************@w1g2000hsg.googlegro ups.com...
On the whole, your comments are on target, and correspond to
generally accepted good programming, but in thie particular
case...

[...]
forget about char* and use std::string, then you can use find, will make
your life a LOT easier.
Whatever you do, don't use char*, that's for sure. But in this
case, I don't think that std::string is really the answer
either.

[...]
How about:
while ( std::getline( line ) )
Generally (say about 99 times out of 100), I'd recommend the
same thing. If the grammar is line oriented, it makes
resynchronizing after an error child's play, and even if the
grammar isn't line oriented, it provides as good a "chunk" as
anything else, and makes it easy to indicate line numbers in the
error messages.

In his case, however, he isn't doing any real parsing, and
there's no error handling, so these considerations don't come
into play. And one of his constructs (a block comment) can
extend across line boundaries---I think you'll find handling it
correctly no easy job if you insist on reading line by line. In
this one particular case (again: it's an exception---your
suggestions are better 99% of the time), I'd use a sliding
window in the file, implemented using std::deque<char>. It took
me less than 5 minutes to come up the following general sketch:

class Window
{
public:
explicit Window( size_t size = 2 ) ;
size_t fill( std::istream& source ) ;
void pop( size_t n = 1 ) ;
char top() const ;
size_t size() const ;
bool matchPrefix( std::string const& target )
const ;

private:
size_t myMaxSize ;
std::deque< char myWindow ;
} ;

Window::Window(
size_t size )
: myMaxSize( size )
{
}

size_t
Window::fill(
std::istream& source )
{
while ( source && myWindow.size() != myMaxSize ) {
char ch ;
if ( source.get( ch ) ) {
myWindow.push_back( ch ) ;
}
}
return myWindow.size() ;
}

void
Window::pop(
size_t n )
{
myWindow.erase(
myWindow.begin(),
myWindow.begin() + std::min( myWindow.size(), n ) ) ;
}

char
Window::top() const
{
assert( ! myWindow.empty() ) ;
return myWindow.front() ;
}

size_t
Window::size() const
{
return myWindow.size() ;
}

bool
Window::matchPrefix(
std::string const& target ) const
{
return myWindow.size() >= target.size()
&& std::equal( target.begin(), target.end(),
myWindow.begin() ) ;
}

int
main()
{
enum State
{
start,
inBlockComment,
inLineComment
} state = start ;
Window w ;
while ( w.fill( std::cin ) != 0 ) {
switch ( state ) {
case start :
if ( w.matchPrefix( "//" ) ) {
state = inLineComment ;
w.pop( 2 ) ;
} else if ( w.matchPrefix( "/*" ) ) {
state = inBlockComment ;
w.pop( 2 ) ;
} else {
std::cout << w.top() ;
w.pop( 1 ) ;
}
break ;

case inBlockComment :
if ( w.matchPrefix( "*/" ) ) {
state = start ;
w.pop( 2 ) ;
} else {
w.pop( 1 ) ;
}
break ;

case inLineComment :
if ( w.matchPrefix( "\n" ) ) {
state = start ;
} else {
w.pop( 1 ) ;
}
break ;
}
}
return 0 ;
}
Hmm.. I dont' see where you checked for ending a block comment, or where
you
are not writing anything if you started a block comment.
Which will be non-trivial problems if he reads line by line.

==========

Actually, I could fix his program rather quickly to work using
std::getline( std::cin, line ); A comment start or end has to be in one
line. I.E.
keyword(); // comment
is legal but
keyword(); /
/ comment
isn't.
So for the end of line comment // it's easy.

Same with block comment, the start or stop has to be in one line.

I don't, at this point, want to show how I would do it because I"m quite
sure this is homework, and the OP needs to do it on their own to learn.
Basically, however, you just have to keep a flag stating if you are in the
middle of a block comment and act accordingly looking for the end of block
comment in any line.
Apr 6 '07 #12

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Player | last post by:
During my setup install of python, I came across an option stating... Compile python files to, .pyc I left it unchecked for now, should I of done otherwise?? As I am a begginer to this, I...
0
by: dhillon2004 | last post by:
Hello All, I am beginer in Perl. I am trying a serial port data logging application. Requirement of my application is that it should be capable of receiving and transmitting on same or diffrent...
1
by: Eagle006 | last post by:
Hi folks. I'm trying to learn c++ on my own. Can somebody help me with a problem I found on one of the texts I'm using. A library function, is lower(), takes a single character (a letter) as an...
2
by: cursed_witch | last post by:
hi! am taking java class. we were asked to do a program that manipulates strings. am not good at it and i'm already failing in class. could anyone help me how to do it. this is an example on how the...
2
by: thecamisland | last post by:
Hello, I'm a begginer. Is this going to work? Dim fm As FirstMenu Class TransHeadInfo Public Function Validate() As Boolean ... fm.Show() ...
2
JavaStudent07
by: JavaStudent07 | last post by:
//V^V^V^V^V^V^V^V^V^V^V^V^^V^V^V^V^V^V^V^V^V^V^V^V^V^V^V^ public static int seekNums(String strLinetext) { int intN=1; char Num=strLinetext.CharAt(intN); return(intN); }
2
by: kaylalooney | last post by:
I am very new to visual basics, and I am doing a project and I need help!! Okay, so when I run the program, I have a label that does not show up because the visibility is set to "false". What...
6
by: miko | last post by:
Hello, I am trying to get this code to print all prime numbers, this code was psudo code and i am trying to translate it into perl, but it seems that i have some technical difficulties as this is my...
13
by: deshix | last post by:
Hi everyone, can you recommend me the best way to learn the PHP? I'm really begginer...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.