Identificateurs interdits en Java Identificateurs interdits en C Exemples de comparaisons Java / C

JavaC

/* fichier MonProg.java */

public class MonProg
{
  public static void main( String[] args )
  {
    System.out.println( "Bonjour !" );
  }
}
     

/* fichier MonProg.c */

#include <stdio.h>

int main( void )
{
  printf( "Bonjour !\n" );
  return 0;
}
     

Légende (par rapport à Java) :

JavaC

/* Pareil.java */

/* import java.lang.System; inutile */
class Pareil
  {
  static int compare( double t[], double e )
    {
    int i, c=-1;
    for ( i=0; i<3; i++ )
      if ( t[i] < e || t[i] > e ) c=0;
      else c=1;
    return c;
    } /* compare() */

  public static void main( String[] args )
    {
    double tab[] = { 1.1, 2.2, 3.3 };
    int r = compare( tab, 2.2 );
    System.out.println( "r="+r );
    } /* main() */
  } /* Pareil */
     

/* Pareil.c */

#include <stdio.h>
/* pas de */
/* classe */
static int compare( double t[], double e )
  {
  int i, c=-1;
  for ( i=0; i<3; i++ )
      if ( t[i] < e || t[i] > e ) c=0;
      else c=1;
  return c;
  } /* compare() */

void main()
  {
  double tab[] = { 1.1, 2.2, 3.3 };
  int r = compare( tab, 2.2 );
  printf( "r=%d\n", r );
  } /* main() */
/* pas de classe */
     

JavaC

/* Strings.java */
/* import java.lang.System; inutile */
/* import java.lang.String; inutile */
/* classe String déjà définie */
class Strings
  {
  public static void main( String args[] )
    {
    String s1 = "bonjour ";
    String s2 = "tout le monde";
    String s3;
    s3 = s1;
    s3 += s2;
    System.out.println( s3.length() + " : " + s3 );
    } /* main() */
  } // Strings
     

/* Strings.c */
#include <stdio.h>
#include <string.h>
typedef char String[80];
/* pas de */
/* classe */
void main()
  {
  String s1 = "bonjour ";
  String s2 = "tout le monde";
  String s3;
  strcpy( s3, s1 );
  strcat( s3, s2 );
  printf( "%d : %s\n", strlen( s3 ), s3 );
  } /* main() */
/* pas de classe */
     

JavaC

/* Structures.java */


class Rationnel
  {
  private int num, den;
/* fin de classe */
/* après les méthodes */

  public Rationnel( int n, int d )
    { num=n; den=d; }

  public Rationnel add( Rationnel p )
    {
    Rationnel r = new Rationnel(
      num*p.den + p.num*den,
      den*p.den );
    return r;
    }

  public void affiche()
    {
    System.out.println( num + "/" + den );
    }
  } // Rationnel

public class Structures
  {
  public static void main( String[] args )
    {
    Rationnel r1 = new Rationnel( 1, 3 );
    Rationnel r2 = new Rationnel( 1, 6 );
    Rationnel r3 = r1.add( r2 );
    r3.affiche();
    } /* main() */
  } // Structures
     

/* Structures.c */
#include <stdio.h>

typedef struct
  {
  int num, den;
  }
  Rationnel;

void init( Rationnel * p, int n, int d )
  { p->num=n; p->den=d; }

Rationnel add( Rationnel o, Rationnel p )
  {
  Rationnel r;
  r.num = o.num*p.den + p.num*o.den;
  r.den = o.den*p.den;
  return r;
  }

void affiche( Rationnel p )
  {
  printf( "%d/%d\n", p.num, p.den );
  }
/* fin de structure avant les fonctions */

/* pas de */
/* classe */
void main()
  {
  Rationnel r1; init( &r1, 1, 3 );
  Rationnel r2; init( &r2, 1, 6 );
  Rationnel r3 = add( r1, r2 );
  affiche( r3 );
  } /* main() */
/* pas de classe */
     

  • Liens sur JNI, en particulier pour l'accès aux données :


    --> Dernière mise à jour :