[FAQ] Onde está o ‘Ç’ no meu firefox ?

Posted by demoncyber | Linux, slackware | Monday 15 September 2008 05:13
CLICK-ME

CLICK-ME

O ç quando escrevo no meu slackware, com um teclado não ABNT, sai com acento como faço para consertar isto?

1) Edite o /etc/profile.d/lang.sh e comente a linha:

#export LANG=en_US

E acrescente:

export LANG=en_US.ISO8859-1

2) Agora no arquivo /etc/profile.d/gtk+.sh e acrescente:

export GTK_IM_MODULE=xim

Ah! Se você gosta de mensagens em português, substitua o primeiro passo, acrescentando LANG=pt_BR no /etc/profile.d/lang.sh

PS: Se você tiver problemas utilizando o xim, substitua o segundo passo por:

export GTK_IM_MODULE=cedilla

by: PiterPunk
Referência: http://wiki.slackwarezine.com.br/index. … _acentuado

Referência:

http://www.slackbr.org/forum/viewtopic.php?f=201&t=16145&start=0&st=0&sk=t&sd=a

  • Share/Bookmark

Cóidigo de uma matriz de tamanho aleatório

Posted by demoncyber | slackware | Monday 15 September 2008 04:42

Click-me

Eu olhando os meus posts no fórum do slackbr de trás para frente encontrei este post que ajudei o cidoloco criando uma matriz que fosse alocada dinamicamente.

#include <stdio.h>

typedef struct{
int **xy;
int linhas;
int colunas;
} Matriz;

int le_matriz(Matriz matriz)
{
int i,j;
for(i=0; i< matriz.linhas; i++)
{
for(j=0; j< matriz.colunas; j++ )
{
printf("[%i][%i]=",i,j);
scanf("%i",&matriz.xy[i][j]);
}
}
}

int add_matriz(Matriz matriz[], int *size_matriz)
{
int linhas,colunas,i,pos;
pos = *size_matriz-1;

//posicao que vamos trabalhar

//realoca caso ela nao tenha sido alocada
if(pos != 0)
{
matriz=(Matriz *)realloc(sizeof(Matriz)*(pos+1));
}

printf("\nInforme o numero de linhas:");
scanf("%i",&linhas);
matriz[pos].linhas = linhas;

printf("\nInforme o numero de colunas:");
scanf("%i",&colunas);
matriz[pos].colunas = colunas;

//int **xy;

//xy=(int **)malloc(linhas*sizeof(int *));
matriz[pos].xy=(int **)malloc(sizeof(int)*linhas);
//complexo quem disse que seria facil =P ( aconselho você   a tentar fazer um desenho sempre ajuda =D )
for(i=0; i<linhas; i++)
{
matriz[pos].xy[i] = (int *)malloc(sizeof(int)*colunas);
}

//toda a estrutura eh tratada como ponteiro
le_matriz(matriz[pos]);

size_matriz++;
}

void print_matriz(Matriz matriz[],int pos)
{
printf("\n Matriz[%i]\n",pos);
int i,j;

for(i=0; i< matriz[pos].linhas; i++)
{
for(j=0; j< matriz[pos].colunas; j++ )
{
printf("[%i][%i]=%i",i,j,matriz[pos].xy[i][j]);
}
}
}

int main(int argc, char **argv)
{
int size_matriz=1; // contador do total de elementos da matriz
Matriz *matriz; // Matriz que possui dois ponteiros que podem ser alocados com quantas fileiras ou colunas quiserem

/*por alguns problemas milagrosos ( não sei explicar direito e sempre bom alocar a primeira posição de um ponteiro antes de passar para qualquer função e depois sequencialmente realocar, sei lah se tem algo relacionado com a utilização da região de memória stack de forma recursiva, sei lah se é estouro de stack bom não sei explicar direito, da mesma forma que a liberação da memoria depois de seu uso é muito interessante =P.)*/
matriz=(Matriz *)malloc(sizeof(Matriz)*size_matriz);

add_matriz(matriz,&size_matriz);
//le a primeira matriz de tamanho variado
print_matriz(matriz,size_matriz-1);
add_matriz(matriz,&size_matriz);
//le a segunda matriz de tamanho variado
print_matriz(matriz,size_matriz-1);
}

  • Share/Bookmark
Get Adobe Flash playerPlugin by wpburn.com wordpress themes