Autor Tema: Pregunta Conceptos Básicos de Programación CCS  (Leído 1921 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado donvalles

  • PIC10
  • *
  • Mensajes: 35
Pregunta Conceptos Básicos de Programación CCS
« en: 16 de Agosto de 2014, 16:53:15 »
Estoy programando en CCS y tengo unas preguntas Básicas que en mi libro no encuentro la respuesta para cada pregunta.

1)Cuando voy a declarar una función o una variable local o global, el nómbre que le ingresamos hasta cuantos caracteres como máximo acepta el compilador?

2)Hasta cuantas veces puedo hacer que una función llame a otra función?

ejemplo:

char fn_02()
{
  fn_03();
}

void fn_01()
 {
  fun_02();
 }

main()
}
fn_01();
}

3) Si coloco sin darme cuenta dos  puntos y comas que sucede? el compilador compila pero esto generaria que el resto del soft en algún momento funcione mal?
eje:

delay_ms(200);;

4)Si aparece un punto y coma suelto que sucede?
eje:

main()
{
delay_ms(200);
;
A=A+B;
}


Desconectado BINARIO

  • PIC16
  • ***
  • Mensajes: 156
Re: Pregunta Conceptos Básicos de Programación CCS
« Respuesta #1 en: 19 de Agosto de 2014, 13:06:15 »
Estimado,
               
1- Segun mis estudios en C/C++ del libro Deitel&Deitel, puedo recordar que una variable puede tener como maximo 32 caracteres.

2- Esta pregunta segun la entiendo, te puedo decir que:
     
       Si preguntas cuantas veces podes llamar a una funcion dentro de un programa, te diria que no tiene limites.
       Si te referis a cuantas veces podes anidar llamados, creo que eso depende del nivel de stack que tenga el micro.

3 - Segun donde se encuentre el ; sera asi:

        *Al comienzo del programa te dara error.                  ''A #DEVICE required before this line''
        *Luego del encabezado de programa te dara un error ''Expecting a declaration''
        *si haces un multiple cierre con ;                               NO PASA NADA
                                                                ejemplo:   variable++ ;;;;;;;;;;;;;;

4- Si aparece un punto y coma suelto te lo toma como si fuese el duplicado del ultimo ; que este antes del mismo dicho ; en tu codigo.

Todo esto lo probe con el CCS V5.025, no se si alguno de los masters pueden confirmar esto, es mi humilde aporte, que puede estar equivocado.
000101111 101110000011110 00010 11101 110 1 000111 00010010011010111100 101101001 11110000 001 00 10110 111 00001 01110 0010101 01011110 00 00011111111 0011111 011110001111111111 1011111111101100000000

Desconectado man3s

  • PIC12
  • **
  • Mensajes: 69
Re: Pregunta Conceptos Básicos de Programación CCS
« Respuesta #2 en: 20 de Agosto de 2014, 01:31:44 »
Que tal amigo, pues bueno, ya te han dado una ayudadita.

1)Las veces que puedes llamar a una funcion pues depende de lo que contenga la funcion, el optimizador puede realizar magia y ser practicamente infinito. Lo que no se permite en CCS es la recursividad, es decir, que una funcion se autollame a si mismo debido a los pocos niveles de pila que posee el micro.

2)La verdad no se cuanto sea el maximo de caracteres soportado para un identificador en CCS, aun asi lo intente y ... no tuve mucho exito :D. En realidad nunca deberian haber un identificador (si mal no recuerdo) arriba de los 31 caracteres, simplemente es ilegible.

Código: [Seleccionar]
   uint8_t abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz;
Para las preguntas 3 y 4, no pasa absolutamente nada, en ambos casos se desprecia. Recuerda que en C es lo mismo que pongas:
Código: [Seleccionar]
delay_ms(200);;
ó
delay_ms(200);
;

Desconectado donvalles

  • PIC10
  • *
  • Mensajes: 35
Re: Pregunta Conceptos Básicos de Programación CCS
« Respuesta #3 en: 20 de Agosto de 2014, 08:25:38 »
Entendi muy bien, muchas gracias. O brigado meus parceiros.


 

anything