integrer-puntero
Publicado por Lucas (22 intervenciones) el 14/08/2002 02:39:50
Hola.
Tengo un pequeño problema, os cuento, estoy practicando con arrays bidimensionales, y se me ocurrio hacer un programa el cual dijese el valor ascii, hexadecimal y octal de una letra del abecedario insertando la posicion de la letra, osea si ejecutaba: /programa -d 1 , me decia todos esos datos sobre la letra 'a'.
Hasta aqui todo correcto, pero tambien se me ocurrio hacer insertar la letra y decir estas mismas caracteristicas, pero el problema me viene para saber si esa letra existe dentro del array bidimensional, porque comparo un valor integrer con un punto. (especificamente el argv[2]) .
Seguidamente pongo el codigo del programa para ver si encontrais alguna soluccion
/* ----------- CODIGO ------------*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc,char *argv[])
{
int valor, i;
char abecedario[25][2]={
1,'a',
2,'b',
3,'c',
4,'d',
5,'f',
6,'g',
7,'h',
8,'i',
9,'j',
10,'k',
11,'l',
12,'m',
13,'n',
14,'o',
15,'p',
16,'q',
17,'r',
18,'s',
19,'t',
20,'u',
21,'v',
22,'w',
23,'x',
24,'y',
25,'z' };
/* si no existen tres argumentos o si el argumento 1 no es -l ó -d imprimimos error */
if(argc!=3 || (strcmp(argv[1],"-l")!=0 &&strcmp(argv[1],"-d"))!=0)
{
error();
}
else
{
/*insertar una letra (opcion -l) pasa saber sus caracteristicas*/
if(strcmp(argv[1],"-l")==0) {
for(i=0; i<26; i++) {
/* intentamos buscar si la letra esta dentro del array*/
if(argv[2]==abecedario[i-1][1]) { /* ----- EL ERROR ----- */
printf("encontrado");
}
}
}
Tengo un pequeño problema, os cuento, estoy practicando con arrays bidimensionales, y se me ocurrio hacer un programa el cual dijese el valor ascii, hexadecimal y octal de una letra del abecedario insertando la posicion de la letra, osea si ejecutaba: /programa -d 1 , me decia todos esos datos sobre la letra 'a'.
Hasta aqui todo correcto, pero tambien se me ocurrio hacer insertar la letra y decir estas mismas caracteristicas, pero el problema me viene para saber si esa letra existe dentro del array bidimensional, porque comparo un valor integrer con un punto. (especificamente el argv[2]) .
Seguidamente pongo el codigo del programa para ver si encontrais alguna soluccion
/* ----------- CODIGO ------------*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc,char *argv[])
{
int valor, i;
char abecedario[25][2]={
1,'a',
2,'b',
3,'c',
4,'d',
5,'f',
6,'g',
7,'h',
8,'i',
9,'j',
10,'k',
11,'l',
12,'m',
13,'n',
14,'o',
15,'p',
16,'q',
17,'r',
18,'s',
19,'t',
20,'u',
21,'v',
22,'w',
23,'x',
24,'y',
25,'z' };
/* si no existen tres argumentos o si el argumento 1 no es -l ó -d imprimimos error */
if(argc!=3 || (strcmp(argv[1],"-l")!=0 &&strcmp(argv[1],"-d"))!=0)
{
error();
}
else
{
/*insertar una letra (opcion -l) pasa saber sus caracteristicas*/
if(strcmp(argv[1],"-l")==0) {
for(i=0; i<26; i++) {
/* intentamos buscar si la letra esta dentro del array*/
if(argv[2]==abecedario[i-1][1]) { /* ----- EL ERROR ----- */
printf("encontrado");
}
}
}
Valora esta pregunta


0