LINUX.ORG.RU

История изменений

Исправление lenin386, (текущая версия) :

То в антивирусной компании он не нужен.

Не нужны больше всего самодуры, докапывающиеся до мелочей, и не понимающие, что сейчас какбэ не 1982-й год, и бОльшую работу по оптимизации кода делает компилятор. Уж такие вещи, как повторный вызов функции уж точно. Смотри, умник

# include <stdio.h>
# include <string.h>

void main (void)
{
    char s [100];
    int a, b;


    scanf ("%s", s);
    a = strlen (s);
    b = strlen (s);
//    b = a;

    printf ("%d \n", a+b);
}

 gcc -O2  test.c
 cp a.out a.in
void main (void)
{
    char s [100];
    int a, b;


    scanf ("%s", s);
    a = strlen (s);
//    b = strlen (s);
    b = a;

    printf ("%d \n", a+b);
}

gcc -O2  test.c
diff a.out a.in

Зато что потом понятнее читать потом будет - b = strlen (s); или b = a; ? Не в таком простом примере, разумеется.

Исправление lenin386, :

То в антивирусной компании он не нужен.

Не нужны больше всего самодуры, докапывающиеся до мелочей, и не понимающие, что сейчас какбэ не 1982-й год, и бОльшую работу по оптимизации кода делает компилятор. Уж такие вещи, как повторный вызов функции уж точно. Смотри, умник

# include <stdio.h>
# include <string.h>

void main (void)
{
    char s [100];
    int a, b;


    scanf ("%s", s);
    a = strlen (s);
    b = strlen (s);
//    b = a;

    printf ("%d \n", a+b);
}

 gcc -O2  test.c
 cp a.out a.in
void main (void)
{
    char s [100];
    int a, b;


    scanf ("%s", s);
    a = strlen (s);
//    b = strlen (s);
    b = a;

    printf ("%d \n", a+b);
}

gcc -O2  test.c
diff a.out a.in

Зато что потом понятнее читать потом будет - b = strlen (s); или b = a; ?

Исходная версия lenin386, :

То в антивирусной компании он не нужен.

Не нужны больше всего самодуры, докапывающиеся до мелочей, и не понимающие, что сейчас какбэ не 1982-й год, и бОльшую работу по оптимизации кода делает компилятор. Смотри, умник

# include <stdio.h>
# include <string.h>

void main (void)
{
    char s [100];
    int a, b;


    scanf ("%s", s);
    a = strlen (s);
    b = strlen (s);
//    b = a;

    printf ("%d \n", a+b);
}

 gcc -O2  test.c
 cp a.out a.in
void main (void)
{
    char s [100];
    int a, b;


    scanf ("%s", s);
    a = strlen (s);
//    b = strlen (s);
    b = a;

    printf ("%d \n", a+b);
}

gcc -O2  test.c
diff a.out a.in